結果

問題 No.2783 4-33 Easy
ユーザー ゼット
提出日時 2024-06-14 21:41:07
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 911 bytes
コンパイル時間 396 ms
コンパイル使用メモリ 82,532 KB
実行使用メモリ 77,384 KB
最終ジャッジ日時 2024-06-14 21:41:12
合計ジャッジ時間 4,617 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 3 WA * 23
権限があれば一括ダウンロードができます

ソースコード

diff #

N=int(input())
A=list(map(str,input().split()))
B=list(map(str,input().split()))
dp=[[[0]*34 for i in range(5)] for j in range(10)]
L1=[]
L2=[]
for i in range(N):
  x=B[i]
  if x[-1]=='X':
    if len(x)>1:
      L2.append((int(A[i]),int(B[i][:-1])))
    else:
      L2.append((int(A[i]),0))
  else:
    L1.append((int(A[i]),int(x)))
mod=998244353
dp[0][0][0]=1
for _ in range(len(L1)):
  x,y=L1[_][:]
  for i in range(8,-1,-1):
    for j in range(5):
      for k in range(34):
        if i==8 and j<k:
          continue
        if j+x<=4 and k+y<=33:
          dp[i+1][j+x][k+y]+=dp[i][j][k]
          dp[i+1][j+x][k+y]%=mod
result=dp[9][4][33]
for _ in range(len(L2)):
  x,y=L2[_][:]
  for j in range(5):
    for k in range(34):
      if y>0 and j<k:
        continue
      if j+x<=4 and k+y<=33:
        dp[9][j+x][k+y]+=dp[8][j][k]
        dp[9][j+x][k+y]%=mod
result+=dp[9][4][33]
result%=mod
print(result)
0