結果

問題 No.3213 depth max K
ユーザー moon17
提出日時 2025-07-25 23:09:40
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 526 bytes
コンパイル時間 140 ms
コンパイル使用メモリ 82,848 KB
実行使用メモリ 265,628 KB
最終ジャッジ日時 2025-07-25 23:10:07
合計ジャッジ時間 4,339 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 1 TLE * 2 -- * 38
権限があれば一括ダウンロードができます

ソースコード

diff #

n,k=map(int,input().split())
M=998244353
dp=[[0]*3 for _ in range(n+1)]
dp[0][0]=1
for i in range(1,2*n+1):
  ndp=[[0]*3 for _ in range(n+1)]
  for j in range(n+1):
    if j+1<=n:
      if j+1==k:
        ndp[j+1][1]+=sum(dp[j][:2])%M
      elif j+1>k:
        ndp[j+1][2]+=sum(dp[j])%M
      else:
        ndp[j+1][0]+=dp[j][0]%M
        ndp[j+1][1]+=dp[j][1]%M
        ndp[j+1][2]+=dp[j][2]%M
    if j-1>=0:
      ndp[j-1][0]+=dp[j][0]%M
      ndp[j-1][1]+=dp[j][1]%M
      ndp[j-1][2]+=dp[j][2]%M
  dp=ndp
print(dp[0][1]%M)
0