結果
問題 |
No.1863 Xor Sum 2...?
|
ユーザー |
👑 |
提出日時 | 2022-03-20 14:56:39 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 92 ms / 2,000 ms |
コード長 | 450 bytes |
コンパイル時間 | 221 ms |
コンパイル使用メモリ | 82,256 KB |
実行使用メモリ | 104,960 KB |
最終ジャッジ日時 | 2024-10-06 22:19:36 |
合計ジャッジ時間 | 3,696 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 28 |
ソースコード
""" A_l + ... + A_r が二進数で繰り上がりなし B_l ^ ... ^ B_r が0 ならOK """ n = int(input()) A = list(map(int, input().split())) B = list(map(int, input().split())) zo = [1, 0] ans = 0 bit = 0 l = 0 X = [0] for b in B: X.append(X[-1] ^ b) for r, (a, b) in enumerate(zip(A, B), 1): while bit & a != 0: bit ^= A[l] zo[X[l]] -= 1 l += 1 bit ^= a zo[X[r]] += 1 ans += zo[X[r]] print(ans - n)