[백준] 평범한 배낭

 

문제

n, k = map(int, input().split())

items = []
for _ in range(n):
    w, v = map(int, input().split())
    items.append((w, v))

bag = [0] * (k + 1)

for w, v in items:
    for i in range(k, w - 1, -1):
        bag[i] = max(bag[i], bag[i - w] + v)

print(bag[k])