結果
問題 |
No.1949 足し算するだけのパズルゲーム(2)
|
ユーザー |
|
提出日時 | 2022-05-20 22:39:05 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 920 ms / 3,000 ms |
コード長 | 745 bytes |
コンパイル時間 | 150 ms |
コンパイル使用メモリ | 82,080 KB |
実行使用メモリ | 100,720 KB |
最終ジャッジ日時 | 2024-09-20 08:57:21 |
合計ジャッジ時間 | 8,020 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 26 |
ソースコード
H,W,Y,X = map(int,input().split()) A = [list(map(int,input().split())) for _ in range(H)] import heapq now = A[Y - 1][X - 1] memo = [[0] * W for _ in range(H)] memo[Y - 1][X - 1] = 1 count = 1 q = [] l = [(-1,0),(1,0),(0,1),(0,-1)] X -= 1 Y -= 1 for i,j in l: if 0 <= Y + i < H and 0 <= X + j < W: heapq.heappush(q,(A[Y + i][X + j],Y + i,X + j)) memo[Y + i][X + j] = 1 import sys while q: a,y,x = heapq.heappop(q) if a >= now: print('No') exit() now += a #memo[y][x] = 1 for i,j in l: if 0 <= y + i < H and 0 <= x + j < W: if memo[y + i][x + j] == 0: memo[y + i][x + j] = 1 heapq.heappush(q,(A[y + i][x + j],y + i,x + j)) print('Yes')