結果
問題 | No.2657 Falling Block Game |
ユーザー |
![]() |
提出日時 | 2024-03-02 15:10:33 |
言語 | cLay (20241019-1) |
結果 |
AC
|
実行時間 | 12 ms / 2,000 ms |
コード長 | 554 bytes |
コンパイル時間 | 2,762 ms |
コンパイル使用メモリ | 177,144 KB |
実行使用メモリ | 9,028 KB |
最終ジャッジ日時 | 2024-09-29 15:57:22 |
合計ジャッジ時間 | 4,723 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 37 |
ソースコード
ll@h,@w,a[w]{},b[w],q[w]; string@s[h]; rrep(y,h-1){ ll qr=0,qw=-1; rep(x,w){ if(s[y][x]=='#'){ qr=0,qw=-1; b[x]=w; }else{ while(qr<=qw&&a[q[qw]]>=a[x]){ --qw; } q[++qw]=x; while(qr<qw&&x-q[qr]>=a[q[qr+1]]){ ++qr; } b[x]=max(x-q[qr],a[q[qr]]); } } qr=0,qw=-1; rrep(x,w){ if(s[y][x]=='#'){ qr=0,qw=-1; }else{ while(qr<=qw&&a[q[qw]]>=a[x]){ --qw; } q[++qw]=x; while(qr<qw&&q[qr]-x>=a[q[qr+1]]){ ++qr; } b[x]<?=max(q[qr]-x,a[q[qr]]); } } rep(x,w){ a[x]=b[x]; } } wtLn(a(w));