結果
| 問題 | No.3734 No Flat Notes |
| コンテスト | |
| ユーザー |
kidodesu
|
| 提出日時 | 2026-09-19 17:59:18 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
WA
不安定
|
| 実行時間 | - |
| コード長 | 2,351 bytes |
| 記録 | |
| コンパイル時間 | 479 ms |
| コンパイル使用メモリ | 83,460 KB |
| 実行使用メモリ | 88,152 KB |
| 最終ジャッジ日時 | 2026-09-19 17:59:53 |
| 合計ジャッジ時間 | 8,140 ms |
|
ジャッジサーバーID (参考情報) |
judge2_1 / judge1_1 |
(要ログイン)
| サブタスク | 配点 | 結果 |
|---|---|---|
| 部分点 | 20 % | AC * 28 |
| 満点 | 80 % | AC * 43 WA * 17 |
| 合計 | 3.5 * 20% = 70 点 |
ソースコード
def main():
h, w, m = list(map(int, input().split()))
if m == 0:
print(-1)
return
from collections import deque
dq = deque([i for i in range(h*w)])
Ans = [[-1 for _ in range(w)] for _ in range(h)]
m0 = m1 = m-1
if not w % 2:
for x in range(w):
if not x % 2:
Y = [i for i in range(h)]
else:
Y = [i for i in range(h-1, -1, -1)]
for y in Y:
if not m0 and not m1:
Ans[y][x] = dq.popleft()
if not (x+y) % 2:
if m0:
Ans[y][x] = dq.popleft()
m0 -= 1
else:
if m1:
Ans[y][x] = dq.pop()
m1 -= 1
elif not h % 2:
for y in range(h):
if not y % 2:
Y = [i for i in range(w)]
else:
Y = [i for i in range(w-1, -1, -1)]
for x in Y:
if not m0 and not m1:
Ans[y][x] = dq.popleft()
if not (x+y) % 2:
if m0:
Ans[y][x] = dq.popleft()
m0 -= 1
else:
if m1:
Ans[y][x] = dq.pop()
m1 -= 1
else:
for x in range(w):
if not x % 2:
Y = [i for i in range(h-1)]
else:
Y = [i for i in range(h-2, -1, -1)]
for y in Y:
if not m0 and not m1:
Ans[y][x] = dq.popleft()
if not (x+y) % 2:
if m0:
Ans[y][x] = dq.popleft()
m0 -= 1
else:
if m1:
Ans[y][x] = dq.pop()
m1 -= 1
for x in range(w-1, -1, -1):
y = h-1
if not m0 and not m1:
Ans[y][x] = dq.popleft()
if not (x+y) % 2:
if m0:
Ans[y][x] = dq.popleft()
m0 -= 1
else:
if m1:
Ans[y][x] = dq.pop()
m1 -= 1
for ans in Ans:
print(*[a+1 for a in ans])
main()
kidodesu