import sys
def solution():
for i in range(1, N+1):
for j in range(1, K+1):
weight = data[i-1][0]
value = data[i-1][1]
if weight <= j:
answer[i][j] = max(answer[i-1][j-weight] + value, answer[i-1][j])
else:
answer[i][j] = answer[i-1][j]
N, K = map(int, sys.stdin.readline().split())
data = []
answer = [[0] * (K+1) for _ in range(N+1)]
for n in range(N):
a, b = map(int, sys.stdin.readline().split())
data.append([a, b])
solution()
print(answer[N][K])
'파이썬 코테 준비' 카테고리의 다른 글
[백준 1463] 1로 만들기 - Python(파이썬) (0) | 2021.02.22 |
---|---|
[백준 10844] 쉬운 계단 수 - Python(파이썬) (0) | 2021.02.22 |
[백준 7562] 나이트의 이동 - Python(파이썬) (0) | 2021.02.22 |
[백준 1697] 숨바꼭질 - Python(파이썬) (0) | 2021.02.22 |
[백준 1707] 이분 그래프 - Python(파이썬) (0) | 2021.02.22 |
댓글