結果
問題 |
No.1037 exhausted
|
ユーザー |
![]() |
提出日時 | 2020-04-24 23:51:51 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 148 ms / 2,000 ms |
コード長 | 527 bytes |
コンパイル時間 | 198 ms |
コンパイル使用メモリ | 82,304 KB |
実行使用メモリ | 76,800 KB |
最終ジャッジ日時 | 2024-10-15 03:57:44 |
合計ジャッジ時間 | 3,051 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 23 |
ソースコード
N, V, L = map(int, input().split()) inf = 10**18 dp = [inf]*(V+1) dp[V] = 0 bx = 0 for _ in range(N): ndp = [inf] * (V+1) x, v, w = map(int, input().split()) for vl in range(V+1): if vl+(x-bx) > V: continue ndp[vl] = dp[vl+(x-bx)] for vl in range(V, -1, -1): vi = min(vl+v, V) ndp[vi] = min(ndp[vi], ndp[vl]+w) dp = ndp[:] bx = x # print(dp) R = inf for i in range(L-bx, V+1): R = min(R, dp[i]) #print(dp) if R >= inf: print(-1) else: print(R)