結果
問題 |
No.424 立体迷路
|
ユーザー |
![]() |
提出日時 | 2016-09-28 15:45:08 |
言語 | Ruby (3.4.1) |
結果 |
RE
|
実行時間 | - |
コード長 | 487 bytes |
コンパイル時間 | 120 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 12,672 KB |
最終ジャッジ日時 | 2024-11-21 07:58:08 |
合計ジャッジ時間 | 3,614 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | RE * 5 |
other | AC * 6 WA * 2 RE * 13 |
コンパイルメッセージ
Syntax OK
ソースコード
W,H=gets.split.map &:to_i Sx,Sy,Gx,Gy=gets.split.map{|i|i.to_i-1} T=H.times.map{gets.chomp.chars.map &:to_i} ag=[[Sx,Sy]] def candidate(x,y,ag) h=T[x][y] [[-1,0],[1,0],[0,-1],[0,1]].each{|i,j| k,l=x+i,y+j t=h-T[k][l] ag<<[[k,l]]if k>0&&k<W&&l>0&&l<H&&ag&[k,l]==[]&&t.abs<2 m,n=k+i,l+j ag<<[[m,n]]if m>0&&m<W&&n>0&&n<H&&ag&[m,n]==[]&&h==T[m][n]&&t>0 } end $><<(H*W).times{|i| break(:YES)if ag&[Gx, Gy]!=[] break(:NO)if !(_=ag[i]) candidate(*_,ag)}