Pagini recente » Cod sursa (job #2314139) | Cod sursa (job #1639775) | Cod sursa (job #2442238)
#include <bits/stdc++.h>
#define NMAX 5001
#define GMAX 10001
using namespace std;
string file="rucsac";
ifstream fin(file+".in");
ofstream fout(file+".out");
int n,gmax;
int v[NMAX],g[NMAX];
int sol[2][GMAX];
int main()
{
int i,j,l=0;
fin>>n>>gmax;
for(i=1;i<=n;i++)
{
fin>>g[i]>>v[i];
}
for(i=1;i<=n;i++,l=1-l)
{
for(j=0;j<=gmax;j++)
{
sol[1-l][j]=sol[l][j];
if(g[i]<=j)
{
sol[1-l][j]=max(sol[1-l][j],sol[l][j-g[i]]+v[i]);
}
}
}
fout<<sol[l][gmax];
return 0;
}