Pagini recente » Cod sursa (job #51885) | Cod sursa (job #7380) | Cod sursa (job #2734416) | Cod sursa (job #2144602) | Cod sursa (job #2044628)
#include <bits/stdc++.h>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int gr[1005],pr[1005];
int rucsac[1005][1005];
int main()
{
int nr_ob,cap_max,i,j,linie_actuala;
f>>nr_ob>>cap_max;
for(int i=1; i<=nr_ob; i++)
f>>gr[i]>>pr[i];
for(i=1; i<=nr_ob; i++)
for(j=1; j<=cap_max; j++)
{
linie_actuala=i%2;
rucsac[linie_actuala][j]=rucsac[1-linie_actuala][j];
if(gr[i]<=j)
rucsac[linie_actuala][j]=max(rucsac[1-linie_actuala][j],rucsac[1-linie_actuala][j-gr[i]]+pr[i]);
}
if(nr_ob%2==0)
g<<rucsac[0][cap_max];
else
g<<rucsac[1][cap_max];
return 0;
}