結果
| 問題 |
No.2991 Hypercubic Graph Flow
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-12-16 19:39:10 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,017 bytes |
| コンパイル時間 | 577 ms |
| コンパイル使用メモリ | 82,452 KB |
| 実行使用メモリ | 87,912 KB |
| 最終ジャッジ日時 | 2024-12-16 19:39:14 |
| 合計ジャッジ時間 | 3,292 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 2 WA * 8 |
ソースコード
def solve(n):
if n == 1:
print("No")
return
print("Yes")
A = [
[0, -1, 1, 0],
[1, 0, 0, -1],
[-1, 0, 0, 1],
[0, 1, -1, 0],
]
for _ in range(n - 2):
le = len(A)
B = [[0] * (le * 2) for _ in range(le * 2)]
for i in range(2 * le):
for j in range(2 * le):
B[i][j] = A[i % le][j % le]
for i in range(le):
for j in range(0, le, 2):
B[i][j + le], B[i][j + le + 1] = B[i][j + le + 1], B[i][j + le]
B[i + le][j], B[i + le][j + 1] = -B[i + le][j + 1], -B[i + le][j]
A = B
for row in A:
print(*row)
assert len(A) == len(A[0]) == 1 << n
for i in range(1 << n):
for j in range(1 << n):
if bin(i ^ j).count("1") % 2 == 0:
assert A[i][j] == 0
else:
assert A[i][j] != 0
assert A[i][j] == -A[j][i]
assert sum(A[i]) == 0
solve(int(input()))