結果
| 問題 | No.2783 4-33 Easy |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-06-15 09:45:00 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 964 bytes |
| コンパイル時間 | 365 ms |
| コンパイル使用メモリ | 82,524 KB |
| 実行使用メモリ | 456,060 KB |
| 最終ジャッジ日時 | 2024-06-15 09:45:05 |
| 合計ジャッジ時間 | 5,080 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 1 TLE * 1 -- * 24 |
ソースコード
from collections import defaultdict
N=int(input())
A=["-1"]+list(input().split())
B=["-1"]+list(input().split())
N+=1
X=[0 for _ in range(N)]
for i in range(N):
if B[i][-1]=="X":
if B[i]=="X":
A[i]=int(A[i])
B[i]=0
X[i]=1
elif B[i][:-1]=="33":
A[i]=int(A[i])
B[i]=33
X[i]=1
else:
A[i]=-1;B[i]=-1
else:
A[i]=int(A[i])
B[i]=int(B[i])
DP=[[defaultdict(int) for _ in range(10)] for _ in range(N)]
DP[0][0][(0,0,0)]=1
for i in range(1,N):
for j in range(10):
for (a,b,x),v in DP[i-1][j].items():
# i枚目のカードを使わない
DP[i][j][(a,b,x)]+=DP[i-1][j][(a,b,x)]
# i枚目のカードを使う
if A[i]!=-1 and j<9 and a+A[i]<=4 and b+B[i]<=33 and x+X[i]<=1:
DP[i][j+1][(a+A[i],b+B[i],x+X[i])]+=DP[i-1][j][(a,b,x)]
print(DP[N-1][9][(4,33,1)]%998244353)