結果
問題 | No.1930 XOR of Two Range |
ユーザー | ああいい |
提出日時 | 2022-05-08 11:42:00 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 406 ms / 2,000 ms |
コード長 | 542 bytes |
コンパイル時間 | 306 ms |
コンパイル使用メモリ | 86,880 KB |
実行使用メモリ | 78,876 KB |
最終ジャッジ日時 | 2023-09-22 06:27:48 |
合計ジャッジ時間 | 2,388 ms |
ジャッジサーバーID (参考情報) |
judge14 / judge15 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 78 ms
71,276 KB |
testcase_01 | AC | 406 ms
78,876 KB |
testcase_02 | AC | 376 ms
78,360 KB |
testcase_03 | AC | 379 ms
78,384 KB |
ソースコード
T = int(input()) def calc(l,r): if r - l <= 10: ans = 0 for i in range(l,r + 1): for j in range(i,r + 1): if i + j > l + r:continue ans ^= (i + j) return ans u = (r - l) // 4 if (u - 1) % 2 == 0: ans = 1 else: ans = 0 for j in range(2 * l + 4 * u,l + r + 1): ans ^= j for j in range(2 * l + 4 * u + 2,l + r + 1): ans ^= j return ans for _ in range(T): l,r = map(int,input().split()) print(calc(l,r))