Pagini recente » Cod sursa (job #1194414) | Diferente pentru utilizator/dornescuvlad intre reviziile 102 si 63 | fmi-no-stress-3/solutii | Istoria paginii runda/teme2_acmunibuc_2013 | Cod sursa (job #1018568)
#include <fstream>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
short int gr[5001],G,pr[5001],n,i,l,j;
int d[2][10001];
int maxi(int a,int b)
{
if (a>b) return a;
return b;
}
int main()
{
f>>n>>G;
for (i=1;i<=n;i++)
f>>gr[i]>>pr[i];
l=0;
for (i=1;i<=n;i++,l=1-l)
for (j=0;j<=G;j++)
{
d[1-l][j]=d[l][j];
if (gr[i]<=j)
d[1-l][j]=maxi(d[1-l][j],d[l][j-gr[i]]+pr[i]);
}
g<<d[l][G];
return 0;
}