結果
| 問題 |
No.74 貯金箱の退屈
|
| コンテスト | |
| ユーザー |
rlangevin
|
| 提出日時 | 2023-10-16 08:50:47 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 43 ms / 5,000 ms |
| コード長 | 536 bytes |
| コンパイル時間 | 243 ms |
| コンパイル使用メモリ | 82,432 KB |
| 実行使用メモリ | 59,776 KB |
| 最終ジャッジ日時 | 2024-09-16 22:10:55 |
| 合計ジャッジ時間 | 2,562 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 30 |
ソースコード
def xor_basis(A, basis = []):
for a in A:
v = a
for b in basis:
v = min(v, v^b)
if v:
basis.append(v)
return basis
N = int(input())
D = list(map(int, input().split()))
A = []
for i in range(N):
v = 1 << ((i + D[i]) % N)
v |= 1 << ((i - D[i]) % N)
A.append(v)
basis = xor_basis(A)
M = len(basis)
W = list(map(int, input().split()))
v = 0
for i in range(N):
v |= (1 << i) * (1 - W[i])
basis = xor_basis([v], basis)
print("Yes") if len(basis) == M else print("No")
rlangevin