atcoder#ABC238D. [ABC238D] AND and SUM

[ABC238D] AND and SUM

配点 : 400400

問題文

TT 個のテストケースについて、以下の問題を解いてください。

非負整数 a,sa,s が与えられます。以下の条件を両方とも満たす非負整数の組 (x,y)(x,y) は存在しますか?

  • x AND y=ax\ \text{AND}\ y=a
  • x+y=sx+y=s
$\text{AND}$ とは

非負整数 n,mn, m の bit ごとの論理積 n AND mn\ \text{AND}\ m は、以下のように定義されます。

  • n AND mn\ \text{AND}\ m を二進表記した際の 2k(k0)2^k \, (k \geq 0) の位の数は、n,mn, m を二進表記した際の 2k2^k の位の数のうち両方11 であれば 11、そうでなければ 00 である。

例えば、4 AND 6=44\ \text{AND}\ 6 = 4 となります(二進表記すると: 100 AND 110=100100\ \text{AND}\ 110 = 100)。

</details>

制約

  • 1T1051 \leq T \leq 10^5
  • 0a,s<2600 \leq a,s \lt 2^{60}
  • 入力はすべて整数

入力

入力は標準入力から与えられる。入力の 11 行目は以下の形式である。

TT

その後、 TT 個のテストケースが続く。各テストケースは以下の形式で与えられる。

aa ss

出力

TT 行出力せよ。i (1iT)i\ (1 \leq i \leq T) 行目には、ii 番目に与えられるテストケースについて問題文中の条件を両方とも満たす非負整数の組 (x,y)(x,y) が存在するなら Yes を、存在しないなら No を出力せよ。

2
1 8
4 2
Yes
No

11 番目のテストケースにおいては、(x,y)=(3,5)(x,y)=(3,5) などが条件を満たします。

22 番目のテストケースにおいては、条件を満たす非負整数の組 (x,y)(x,y) は存在しません。

4
201408139683277485 381410962404666524
360288799186493714 788806911317182736
18999951915747344 451273909320288229
962424162689761932 1097438793187620758
No
Yes
Yes
No