結果
問題 | No.2430 Damage Zone |
ユーザー | miho-4 |
提出日時 | 2023-08-18 22:31:51 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 816 ms / 2,000 ms |
コード長 | 724 bytes |
コンパイル時間 | 404 ms |
コンパイル使用メモリ | 82,124 KB |
実行使用メモリ | 187,700 KB |
最終ジャッジ日時 | 2024-11-28 08:28:38 |
合計ジャッジ時間 | 8,618 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 28 |
ソースコード
mod=998244353 from collections import deque,defaultdict H,W,K=map(int,input().split()) L=[input() for _ in range(H)] flag=[[1]*W for _ in range(H)] D=defaultdict(set)#key=(h,w,d) D[(0,0)]={0} D2=defaultdict(int) D2[(0,0,0)]=1 ans=0 q=deque([(0,0)]) while q: h,w=q.popleft() for dh,dw in [(1,0),(0,1)]: if h+dh<H and w+dw<W and L[h+dh][w+dw]!="#": if flag[h+dh][w+dw]: q.append((h+dh,w+dw)) flag[h+dh][w+dw]=0 dd=0 if L[h+dh][w+dw]=="o":dd=1 for d in D[(h,w)]: if d+dd<K: D[(h+dh,w+dw)].add(d+dd) D2[((h+dh,w+dw,d+dd))]+=D2[(h,w,d)] D2[((h+dh,w+dw,d+dd))]%=mod ans=0 for d in D[(H-1,W-1)]: ans+=D2[(H-1,W-1,d)] ans%=mod print(ans)