結果
問題 |
No.86 TVザッピング(2)
|
ユーザー |
|
提出日時 | 2014-12-05 21:11:05 |
言語 | Ruby (3.4.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 523 bytes |
コンパイル時間 | 167 ms |
コンパイル使用メモリ | 7,936 KB |
実行使用メモリ | 12,928 KB |
最終ジャッジ日時 | 2025-06-20 13:57:43 |
合計ジャッジ時間 | 4,198 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 24 WA * 6 |
コンパイルメッセージ
Syntax OK
ソースコード
n,m=gets.split.map(&:to_i) l=(1..n).map{gets+?#}+[?#*m] fx=x=0 fy=y=(0...n).find{|i|fx=x=l[i].rindex(?.)} dir=[[0,-1],[-1,0],[0,1],[1,0]]*2 d=1 right=false loop{ l[y][x]=?# (rx,ry),(dx,dy),(lx,ly)=dir[d-1..d+1] if l[y+ry][x+rx]==?. break if right right=true d-=1 x+=rx y+=ry elsif l[y+dy][x+dx]==?. x+=dx y+=dy elsif l[y+ly][x+lx]==?. break if d>4 d+=1 x+=lx y+=ly else break end } puts y-1==fy&&x==fx&&!l.flatten.index(?.)?:YES:"NO"