백준 평범한 배낭 파이썬
[골드 5] 백준 12865 - 평범한 배낭 (파이썬)
[골드 5] 백준 12865 - 평범한 배낭 (파이썬)
2025.04.28https://www.acmicpc.net/problem/12865풀이물건 개수 : N배낭의 최대 무게 : K각 물건은 W, V : 무게, 가치각 물건은 한 번만 쓸 수 있다.무게 ≤ K 조건을 만족하면서 가치의 합을 구하는게 목표기본적인 다이나믹 프로그래밍인데 나는 왜이렇게 어렵게 느껴지는걸까.먼저 dp[j]는 무게 j일때, 만들 수 있는 최대 가치를 나타낸다.그래서 dp = [0] * (K+1)로 무게 0부터 K까지 모든 무게에 대해, 처음엔 가치를 0으로 초기화 한다.dp = [0] * (K + 1)점화식을 다음과 같이 구성한다.for w, v in items : for j in range(K, w - 1, -1) : dp[j] = max(dp[j], dp[j - w] + v)현재..