Pagini recente » Cod sursa (job #1911325) | Cod sursa (job #1755574) | Cod sursa (job #989675) | Cod sursa (job #331072) | Cod sursa (job #1040567)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n, G, a, b;
vector< pair<int, int> > v;
vector< pair<int, int> >::iterator it;
int m[10000];
int main()
{
f>>n>>G;
for(int i=0; i<n; ++i){
f>>a>>b;
v.push_back(make_pair(a,b));
}
for(it=v.begin(); it!=v.end(); ++it){
a=it->first;
b=it->second;
for(int j=G; j>=a; --j)
m[j]=max(m[j], m[j-a]+b);
}
int mx=0;
for(int i=1; i<=G; ++i) mx=max(mx, m[i]);
g<<mx;
return 0;
}