๋ฐฑ์ค 12865๋ฒ ํ์ด์ฌ
import sys
input = sys.stdin.readline
n, k = map(int, input().split())
pack = [0 for _ in range(k + 1)]
w_pack = []
v_pack = []
for _ in range(n):
w, v = map(int, input().split())
w_pack.append(w)
v_pack.append(v)
for i in range(n):
for j in range(k, w_pack[i] - 1, -1):
pack[j] = max(pack[j], pack[j - w_pack[i]] + v_pack[i])
# pack์ ์ธ๋ฑ์ค๋ ๋ฌด๊ฒ ๊ทธ ๊ฐ์ ํด๋น ๋ฌด๊ฒ์ ์ต๋ ๊ฐ์น ๊ฐ์ ์๋ฏธ
print(pack[k])
๋ฐฑ์ค 12865๋ฒ dpํ์ด ์ค๋ช
์์ ์ค๋ช
์ ๋ณด๊ณ ์ดํด ํ ์ ์์์ต๋๋ค...
์์ธํ ์ค๋ช
๋์ด ์์ด ๊ณต์ ํด๋ด
๋๋ค.