Pagini recente » Cod sursa (job #3266882) | Cod sursa (job #2061415) | Cod sursa (job #364863) | Cod sursa (job #2672198) | Cod sursa (job #1673995)
#include<iostream>
#include<fstream>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
const int N = 10001;
int val[N], gr[N]; /// Valoare, greutate
int best[N]; /// best[i] = valoarea maxima pt. obiecte de greutate 'i'
int n,g;
void afis()
{
int i;
for(i=1; i<=g; ++i) out<<best[i]<<" "; out<<"\n";
}
int main()
{
int i,j;
in>>n>>g;
for(i=1; i<=n; ++i) in>>gr[i]>>val[i];
for(i=1; i<=n; ++i)
{
for(j=g; j>=gr[i]; --j)
best[j] = max(best[j], best[j - gr[i]] + val[i]);
//afis();
}
out<<best[g];
return 0;
}