結果

問題 No.971 いたずらっ子
ユーザー ntuda
提出日時 2025-01-02 18:55:38
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 675 bytes
コンパイル時間 223 ms
コンパイル使用メモリ 82,516 KB
実行使用メモリ 358,160 KB
最終ジャッジ日時 2025-01-02 18:56:11
合計ジャッジ時間 32,188 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 12 TLE * 9
権限があれば一括ダウンロードができます

ソースコード

diff #

from heapq import *
H, W = map(int, input().split())
A = [list(input()) for _ in range(H)]
Q = []
A[0][0] = 0
heappush(Q, (0, 0, 0))
dir = [[1, 0], [0, 1]]
cnt = 0
while Q:
    while Q and Q[0][0] == cnt:
        _, x, y = heappop(Q)
        for xd, yd in dir:
            x1 = x + xd
            y1 = y + yd
            if 0 <= x1 < H and 0 <= y1 < W:
                if A[x1][y1] == ".":
                    A[x1][y1] = cnt + 1
                    heappush(Q, (cnt + 1, x1, y1))
                elif A[x1][y1] == "k":
                    A[x1][y1] = A[x][y] + 1 + x1 + y1
                    heappush(Q, (A[x][y] + 1 + x1 + y1, x1, y1))
    cnt += 1
print(A[H - 1][W - 1])
0