Pagini recente » Cod sursa (job #915717) | Cod sursa (job #1769655) | Cod sursa (job #1182390) | Cod sursa (job #489282) | Cod sursa (job #2116257)
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>
using namespace std;
int g[10001],p[5001],d[5001][10001];
int N,G;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int main()
{
int el;
fin>>N>>G;
for(int i=1;i<=N;++i)
{
fin>>g[i]>>p[i];
}
for(int i=1;i<=N;++i)
{
for(int j=1;j<=G;++j)
{
d[i][j]=d[i-1][j];
if(g[i]<=j) d[i][j]=max(d[i][j],d[i-1][j-g[i]]+p[i]);
}
}
fout<<d[N][G];
return 0;
}