Pagini recente » Cod sursa (job #2980737) | Cod sursa (job #1518647) | Cod sursa (job #12211) | Cod sursa (job #183678) | Cod sursa (job #3001835)
#include <fstream>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
int w[5001], p[5001];
int optim[10001];
int n, g;
int main()
{
in >> n >> g;
for(int i = 1;i <= n;i++){
in >> w[i] >> p[i];
}
optim[0] = 0;
int solutie = 0;
for(int i = 1;i <= n;i++){
for(int j = g - w[i];j >= 0;j--){
if(optim[j + w[i]] < optim[j] + p[i]){
optim[j + w[i]] = optim[j] + p[i];
if(optim[j + w[i]] > solutie) solutie = optim[j + w[i]];
}
}
}
out << solutie;
return 0;
}