CF2153B Bitwise Reversion
题目描述
给定三个非负整数 $x$,$y$ 和 $z$,判断是否存在三个非负整数 $a$、$b$、$c$,满足以下三个条件:
- $a \mathbin{\&} b = x$
- $b \mathbin{\&} c = y$
- $a \mathbin{\&} c = z$
其中 $\mathbin{\&}$ 表示[按位与运算](https://en.wikipedia.org/wiki/Bitwise_operation#AND)。
输入格式
输入包含多组测试数据。第一行包含一个整数 $t$($1 \leq t \leq 10^4$),表示测试数据的组数。
接下来每组测试数据占一行,每行包含三个整数 $x$、$y$ 和 $z$($0 \leq x, y, z \leq 10^9$),分别表示 $a \mathbin{\&} b$、$b \mathbin{\&} c$ 和 $a \mathbin{\&} c$ 的目标值。
输出格式
对于每组测试数据,如果存在符合条件的三个非负整数 $a$、$b$、$c$,输出 "YES";否则输出 "NO"。
输出可以使用任意大小写形式,例如 "yEs"、"yes"、"Yes" 和 "YES" 都被认为是正答。
说明/提示
在第一个测试样例中,$a=3$,$b=5$,$c=9$ 满足条件:$3 \mathbin{\&} 5 = 1$,$5 \mathbin{\&} 9 = 1$,$3 \mathbin{\&} 9 = 1$。
在第二个测试样例中,$a=7$,$b=3$,$c=22$ 满足条件:$7 \mathbin{\&} 3 = 3$,$3 \mathbin{\&} 22 = 2$,$7 \mathbin{\&} 22 = 6$。
在第三个测试样例中,可以证明不存在非负整数 $a$、$b$、$c$ 使得 $a \mathbin{\&} b = 4$,$b \mathbin{\&} c = 8$,$a \mathbin{\&} c = 12$。
由 ChatGPT 5 翻译