結果
| 問題 |
No.2429 Happiest Tabehodai Ways
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2023-08-19 01:24:19 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 83 ms / 2,000 ms |
| コード長 | 695 bytes |
| コンパイル時間 | 296 ms |
| コンパイル使用メモリ | 81,836 KB |
| 実行使用メモリ | 66,112 KB |
| 最終ジャッジ日時 | 2024-06-12 08:02:50 |
| 合計ジャッジ時間 | 3,644 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 44 |
ソースコード
MOD = 998244353
N, K = map(int, input().split())
C = list(map(int, input().split()))
D = list(map(int, input().split()))
CD = []
for c, d in zip(C, D):
CD.append((c, d))
CD.sort()
dp = [[-1, -1] for _ in range(K+1)]
dp[0] = [0, 1]
for k in range(K):
if dp[k][0]==-1:
continue
for c, d in CD:
if c+k>K:
break
if dp[c+k][0]<dp[k][0]+d:
dp[c+k] = [dp[k][0]+d, dp[k][1]]
elif dp[c+k][0]==dp[k][0]+d:
dp[c+k][1] += dp[k][1]
dp[c+k][1] %= MOD
#print(dp)
ma = 0
ans = 0
for d, cnt in dp:
if ma<d:
ma = d
ans = cnt
elif ma==d:
ans += cnt
ans %= MOD
print(ma)
print(ans)