Pagini recente » Cod sursa (job #3148408) | Cod sursa (job #2668285) | Cod sursa (job #1653212) | Cod sursa (job #2542971) | Cod sursa (job #2542816)
#include <fstream>
#define INF 2000000002
using namespace std;
int c[2][10002];
struct
{
int gr,p;
}v[5002];
int main()
{
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n,G,lc,lp;
f>>n>>G;
for(int i=1;i<=n;++i)
f>>v[i].gr>>v[i].p;
lc=1,lp=0;
for(int i=1;i<=n;++i,lc^=1,lp^=1)
for(int j=1;j<=G;++j)
{
if(v[i].gr<=j)
{
if(c[lp][j]<c[lp][j-v[i].gr]+v[i].p)
c[lc][j]=c[lp][j-v[i].gr]+v[i].p;
else
c[lc][j]=c[lp][j];
}
else
c[lc][j]=c[lp][j];
}
g<<c[lp][G];
f.close();
g.close();
return 0;
}