Pagini recente » Cod sursa (job #2102556) | Cod sursa (job #374297) | Istoria paginii utilizator/teovecerdi | Cod sursa (job #2598940) | Cod sursa (job #3242166)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
struct obiect{
int greutate, val;
};
const int NMAX=1e4;
vector<int> dp(NMAX+5);
int main(){
int n, g;
fin>>n>>g;
vector<struct obiect> v(n+1);
for(int i=1;i<=n;i++){
fin>>v[i].greutate>>v[i].val;
}
for(int i=1;i<=n;i++){
for(int j=g-v[i].greutate;j>=0;j--){
dp[j+v[i].greutate]=max(dp[j+v[i].greutate], dp[j]+v[i].val);
}
}
fout<<dp[g];
}