結果
| 問題 |
No.1398 調和の魔法陣 (構築)
|
| コンテスト | |
| ユーザー |
AEn
|
| 提出日時 | 2022-05-31 16:13:10 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,476 bytes |
| コンパイル時間 | 358 ms |
| コンパイル使用メモリ | 82,304 KB |
| 実行使用メモリ | 82,728 KB |
| 最終ジャッジ日時 | 2024-09-21 01:19:36 |
| 合計ジャッジ時間 | 30,283 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 6 WA * 22 |
ソースコード
W, H, X = map(int, input().split())
ans = [[0]*(W+1) for _ in range(H+1)]
x1 = [1, 1, 0, -1, -1, -1, 0, 1, 0]
y1 = [0, 1, 1, 1, 0, -1, -1, -1, 0]
def debag():
r = 0
for x in range(H):
for y in range(W):
sm = 0
for px, py in zip(x1, y1):
cx = x+px; cy = y+py
if 0<=cx<H and 0<=cy<W:
sm += ans[cx][cy]
if r == 0:
S = sm
else:
if sm != S:
return False
return True
if X > 36:
print(-1)
elif H==W==1:
if X > 9:
print(-1)
else:
print(X)
elif W == 1:
if X > 9*W*2:
print(-1)
else:
res = [min(X, 9), X-min(X, 9), 0]
for i in range(H):
print(res[i%3])
elif H == 1:
if X > 9*H*2:
print(-1)
else:
res = [min(X, 9), X-min(X,9), 0]
for i in range(W):
print(res[i%3], end = '')
else:
a, b = X//4, X%4
x = []
for i in range(4):
if b > 0:
ex = 1
else:
ex = 0
if i < 2:
ans[0][i] = a + ex
b -= 1
else:
ans[1][i-2] = a + ex
for i in range(3):
xx = []
for j in range(3):
xx.append(ans[i][j])
x.append(xx)
for i in range(H):
for j in range(W):
ans[i][j] = x[i%3][j%3]
ans[i].pop()
print(*ans[i], sep = '')
# print(debag())
AEn