結果
問題 |
No.2096 Rage With Our Friends
|
ユーザー |
![]() |
提出日時 | 2022-10-07 22:45:05 |
言語 | cLay (20241019-1) |
結果 |
WA
|
実行時間 | - |
コード長 | 708 bytes |
コンパイル時間 | 2,799 ms |
コンパイル使用メモリ | 186,552 KB |
実行使用メモリ | 14,016 KB |
最終ジャッジ日時 | 2024-06-12 20:02:33 |
合計ジャッジ時間 | 9,920 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 7 WA * 4 TLE * 1 -- * 15 |
ソースコード
ll h,w,d[2000],e[]; char s[2000][2001]; bool on; void f(ll x,ll y,ll t){ rrep(u,d[y]+1,t+1){ if(s[u][y]=='.'){ d[y]=u; on=true; ll t2=min(h-1,u+1+max(0,x-u)/2); if(y>0) f(u,y-1,t2); if(y<w-1>0) f(u,y+1,t2); break; } } } { rd(h,w); ll@--sx,@--sy,@--gx,@--gy; d[0..w-1]=-1; d[sy]=0; rd(s(h)); ll z=0; { on=false; if(sy>0) f(sx,sy-1,sx+1); if(sy<w-1) f(sx,sy+1,sx+1); if(d[gy]==gx){ wt(z); exit(0); } } while(on){ ++z; on=false; e[0..w-1]=d[0..]; rep(y,w){ if(y>1){ f(0,y,min(h-1,e[y-2]+1)); } if(y<w-3){ f(0,y,min(h-1,e[y+2]+1)); } { f(0,y,min(h-1,e[y]+1)); } } if(d[gy]==gx){ wt(z); exit(0); } } wt(-1); }