結果
問題 | No.1930 XOR of Two Range |
ユーザー | ああいい |
提出日時 | 2022-05-08 11:42:00 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 296 ms / 2,000 ms |
コード長 | 542 bytes |
コンパイル時間 | 203 ms |
コンパイル使用メモリ | 82,280 KB |
実行使用メモリ | 77,480 KB |
最終ジャッジ日時 | 2024-07-07 23:09:05 |
合計ジャッジ時間 | 1,756 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 31 ms
52,692 KB |
testcase_01 | AC | 296 ms
77,480 KB |
testcase_02 | AC | 290 ms
77,144 KB |
testcase_03 | AC | 284 ms
77,016 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))