結果
| 問題 |
No.1947 質より種類数
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2022-05-20 22:13:13 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 373 ms / 2,000 ms |
| コード長 | 498 bytes |
| コンパイル時間 | 175 ms |
| コンパイル使用メモリ | 82,560 KB |
| 実行使用メモリ | 77,696 KB |
| 最終ジャッジ日時 | 2024-09-20 08:24:30 |
| 合計ジャッジ時間 | 5,939 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 37 |
ソースコード
inf=10**18
dxy=[(0,1), (1,0), (-1, 0), (0, -1)]
mod=10**9+7
MOD=998244353
N, V, C = map(int, input().split())
dp = [0]*(V+1)
fvw = []
VW = []
for _ in range(N):
v, w = map(int, input().split())
fvw.append([v, w+C])
VW.append([v, w])
for i in range(N):
v, w = fvw[i]
for p in range(v, V+1)[::-1]:
dp[p] = max(dp[p], dp[p-v]+w)
for i in range(N):
v, w = VW[i]
for p in range(V+1):
if p+v<V+1: dp[p+v] = max(dp[p+v], dp[p]+w)
print(max(dp))