물건의 무게와 물건의 가치가 주어졌을 때 배낭에 넣을 수 있는 물건들의 가치합의 최대값 구하기
#include <bits/stdc++.h>
using namespace std;
int n, k;
int d[100005];
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cin >> n >> k;
vector<pair<int,int>> item(n);
for(int i = 0; i < n; i++){
cin >> item[i].first >> item[i].second;
}
for(int i = 0; i < n; i++){
int w = item[i].first;
int v = item[i].second;
for(int j = k; j >= w; j--){
d[j] = max(d[j], d[j - w] + v); // 안 넣기, 넣기
}
}
cout << d[k];
}