/
Time Limit: 2 sec / Memory Limit: 1024 MiB
この問題は ABC213 の A 問題「Bitwise Exclusive Or」に追記したものです。また、テストケースは別のものとなっています。
問題文
0 \le A, B \le 255 の整数 A, B が与えられます。
A \text{ xor } C = B となる 0 以上の整数 C を求めてください。
なお、そのような C はただ 1 つ存在し、0 \le C \le 255
であることが証明されます。
整数 a, b のビットごとの排他的論理和 a \text{ xor } b 例えば、3 \text{ xor } 5 = 6 となります。xor とは
は、以下のように定義されます。
(二進表記すると: 011 \text{ xor } 101 = 110)
制約
- 0 \le A, B \le 255
- 入力に含まれる値はすべて整数である
入力
入力は以下の形式で標準入力から与えられる。
A B
出力
答えを出力せよ。
入力例 1
3 6
出力例 1
5
3 は二進表記で 011、5 は二進表記で 101 なので、これらの \text{ xor } は二進表記で 110、十進表記で 6 です。
このように、3 \text{ xor } 5 = 6 となるので、答えは 5 です。
入力例 2
10 12
出力例 2
6

ヒント
クリックでヒントを開く
x ^ y と書けます。
テスト入出力
書いたプログラムがACにならず、原因がどうしてもわからないときだけ見てください。
クリックでテスト入出力を見る
テスト入力1
255 255
テスト出力1
0
テスト入力2
123 45
テスト出力2
86
テスト入力3
101 154
テスト出力3
255
解答例(Python)
クリックで解答例1を見る
A, B = map(int, input().split())
# C の候補を全て試し、A xor C = B を満たすか確かめる
for C in range(256):
if (A ^ C) == B:
print(C)
クリックで解答例2を見る
A, B = map(int, input().split())
# A xor C = B のとき、C = A xor B となる
print(A ^ B)