Submission #3938037


Source Code Expand

N, W = map(int, input().split())
V = 10**5
INF = 10**18
dp = [INF]*(V+1)

dp[0] = 0
for i in range(N):
    w, v = map(int, input().split())
    for j in range(V, v-1, -1):
        if dp[j-v] + w <= W:
            dp[j] = min(dp[j], dp[j-v] + w)
for i in range(V, -1, -1):
    if dp[i] < INF:
        print(i)
        break

Submission Info

Submission Time
Task E - Knapsack 2
User yaketake08
Language PyPy3 (2.4.0)
Score 100
Code Size 336 Byte
Status AC
Exec Time 279 ms
Memory 41836 KiB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 21
Set Name Test Cases
All 0_00, 0_01, 0_02, 1_00, 1_01, 1_02, 1_03, 1_04, 1_05, 1_06, 1_07, 1_08, 1_09, 1_10, 1_11, 1_12, 1_13, 1_14, 1_15, 1_16, 1_17
Case Name Status Exec Time Memory
0_00 AC 172 ms 40048 KiB
0_01 AC 164 ms 39408 KiB
0_02 AC 170 ms 39664 KiB
1_00 AC 165 ms 39408 KiB
1_01 AC 222 ms 41068 KiB
1_02 AC 236 ms 41180 KiB
1_03 AC 237 ms 41436 KiB
1_04 AC 243 ms 41180 KiB
1_05 AC 236 ms 41436 KiB
1_06 AC 244 ms 41452 KiB
1_07 AC 239 ms 41564 KiB
1_08 AC 249 ms 41452 KiB
1_09 AC 242 ms 41436 KiB
1_10 AC 253 ms 41452 KiB
1_11 AC 244 ms 41836 KiB
1_12 AC 255 ms 41452 KiB
1_13 AC 249 ms 41708 KiB
1_14 AC 262 ms 41452 KiB
1_15 AC 260 ms 41836 KiB
1_16 AC 279 ms 41724 KiB
1_17 AC 256 ms 41836 KiB