結果
| 問題 | No.2430 Damage Zone |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-02-18 09:27:44 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
AC
|
| 実行時間 | 142 ms / 2,000 ms |
| コード長 | 880 bytes |
| 記録 | |
| コンパイル時間 | 332 ms |
| コンパイル使用メモリ | 82,208 KB |
| 実行使用メモリ | 87,244 KB |
| 最終ジャッジ日時 | 2026-02-18 09:27:49 |
| 合計ジャッジ時間 | 4,081 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 28 |
ソースコード
H,W,K = map(int,input().split())
S = [input().strip() for _ in range(H)]
MOD = 998244353
dp = [[[0 for _ in range(K+1)] for _ in range(W)] for _ in range(H)]
for k in range(1,K+1):
dp[0][0][k] = 1
for j in range(1,W):
for k in range(1,K+1):
if S[0][j]==".":
dp[0][j][k] = dp[0][j-1][k]
elif S[0][j]=="o" and k<K:
dp[0][j][k] = dp[0][j-1][k+1]
for i in range(1,H):
for k in range(1,K+1):
if S[i][0]==".":
dp[i][0][k] = dp[i-1][0][k]
elif S[i][0]=="o" and k<K:
dp[i][0][k] = dp[i-1][0][k+1]
for i in range(1,H):
for j in range(1,W):
for k in range(1,K+1):
if S[i][j]==".":
dp[i][j][k] = (dp[i-1][j][k]+dp[i][j-1][k])%MOD
elif S[i][j]=="o" and k<K:
dp[i][j][k] = (dp[i-1][j][k+1]+dp[i][j-1][k+1])%MOD
print(dp[H-1][W-1][1])