結果
問題 | No.424 立体迷路 |
ユーザー |
![]() |
提出日時 | 2017-04-03 14:36:47 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 29 ms / 2,000 ms |
コード長 | 649 bytes |
コンパイル時間 | 70 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 11,264 KB |
最終ジャッジ日時 | 2024-07-05 07:14:05 |
合計ジャッジ時間 | 1,378 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 5 |
other | AC * 21 |
ソースコード
import syssys.setrecursionlimit(9**9)h,w=map(int,input().split())sy,sx,gy,gx=map(int,input().split())sx-=1sy-=1gx-=1gy-=1b=[list(map(int,input()))for _ in[0]*h]c=[[False]*w for _ in[0]*h]c[sy][sx]=Truedef s(x,y):for i in[(1,0),(-1,0),(0,1),(0,-1)]:if 0<=x+i[0]<w and 0<=y+i[1]<h and c[y+i[1]][x+i[0]]==False and abs(b[y+i[1]][x+i[0]]-b[y][x])<2:c[y+i[1]][x+i[0]]=Trues(x+i[0],y+i[1])for i in[(2,0),(-2,0),(0,2),(0,-2)]:if 0<=x+i[0]<w and 0<=y+i[1]<h and c[y+i[1]][x+i[0]]==False and b[y+i[1]//2][x+i[0]//2]<b[y+i[1]][x+i[0]]==b[y][x]:c[y+i[1]][x+i[0]]=Trues(x+i[0],y+i[1])s(sx,sy)print(["NO","YES"][c[gy][gx]])