結果
問題 |
No.2328 Build Walls
|
ユーザー |
|
提出日時 | 2023-05-28 13:55:54 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
TLE
|
実行時間 | - |
コード長 | 663 bytes |
コンパイル時間 | 209 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 320,768 KB |
最終ジャッジ日時 | 2024-12-26 22:18:48 |
合計ジャッジ時間 | 67,727 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 17 WA * 1 TLE * 16 |
ソースコード
from collections import deque h, w = map(int, input().split()) a = [[] for _ in range(h - 2)] for i in range(h - 2): a[i] = list(map(int, input().split())) ans = 800 * 801 for i in range(h - 2): if a[i][0] == -1: continue q = deque() q.append((i, 0, a[i][0])) while q: tate, yoko, cost = q.popleft() if yoko == w - 1: if ans > cost: ans = cost continue for j in range(-1, 2): if h - 3 >= tate + j >= 0 and a[tate + j][yoko + 1] != -1: q.append((tate + j, yoko + 1, cost + a[tate + j][yoko + 1])) if ans == 800 * 801: print(-1) else: print(ans)