AT_arc231_b [ARC231B] Three Mex

题目描述

给定非负整数 $A, B, C$。判断是否存在满足以下三个条件的非负整数集合 $X, Y$;若存在,请给出一个例子。 - $X, Y$ 中的每个元素都是不超过 $2026$ 的非负整数。 - $\mathrm{mex}(X) = A$,$\mathrm{mex}(Y) = B$。 - 定义非负整数集合 $Z = \{\,x \oplus y \mid x \in X,\ y \in Y\,\}$,则 $\mathrm{mex}(Z) = C$。其中 $\oplus$ 表示按位异或运算。 每个输入文件包含 $T$ 组测试数据。 > **名词说明**:$\mathrm{mex}(S)$ 表示最小的不属于集合 $S$ 的非负整数。

输入格式

输入从标准输入按以下格式给出。其中 $case_i$($1 \le i \le T$)表示第 $i$ 组测试数据。 ``` T case_1 case_2 ⋮ case_T ``` 每组测试数据格式如下: ``` A B C ```

输出格式

按 $case_1, case_2, \cdots, case_T$ 的顺序输出答案。对每组测试数据,输出如下: - 若不存在满足条件的非负整数集合 $X, Y$,输出 `No` 并换行。 - 若存在满足条件的非负整数集合 $X, Y$,按以下格式输出一个例子。设 $N, M$ 分别为 $X, Y$ 的元素个数,$X_i$ 为 $X$ 的第 $i$ 个元素($1 \le i \le N$),$Y_j$ 为 $Y$ 的第 $j$ 个元素($1 \le j \le M$)。此处 $X_1, X_2, \cdots, X_N$ 必须两两不同,$Y_1, Y_2, \cdots, Y_M$ 也必须两两不同。若存在多组满足条件的集合 $X, Y$,任意一组都会被判为正确。 ``` Yes N X_1 X_2 ... X_N M Y_1 Y_2 ... Y_M ```

说明/提示

## 样例解释 - 第一组:取 $X = \{0, 1, 3\}$,$Y = \{0, 1, 2, 4\}$,则 $Z = \{0, 1, 2, 3, 4, 5, 7\}$,满足 $\mathrm{mex}(X) = 2$,$\mathrm{mex}(Y) = 3$,$\mathrm{mex}(Z) = 6$。 - 第二组:不存在满足条件的非负整数集合 $X, Y$。 - 第四组:$X, Y$ 可以为空集。 ## 数据范围 - $1 \le T \le 10$ - $0 \le A \le 1000$ - $0 \le B \le 1000$ - $0 \le C \le 1000$ - 所有输入值均为整数。