냅색 알고리즘은 배낭에 담을 수 있는 무게의 최댓값이 정해지고, 일정 가치와 무게를 가진 짐을 배낭에 넣을 때 가치의 합이 최대가 되도록 짐을 고르는 방법 그래서 푸는 과정으로는 x축으로는 가방의 무게, y축으로는 짐의 개수로 생각하고 이전의 값을 참조하는 dp 문제로 모두 n+1, k+1로 배열과 반복문을 실행 이때 x축으로도 0의 무게에 대한 배낭, y축으로도 [0,0]을 따로 추가한 이유는 x축에 해당하는 0의 무게에 대한 배낭 값도 사용이 되기에 추가를 했음. ex) 배낭의 무게 j = 6, 실제 짐의 무게 6의 경우 6-6 = 0으로 0의 무게를 더하는 식이 되어야하는데 위의 식을 생각하지 못하면 -1인 k-1번째 무게를 가지기 때문. 이후 현재 반복문으로 탐색하는 가방의 현재 무게 j 보다 탐..