Pagini recente » Cod sursa (job #1653376) | Cod sursa (job #338719) | Cod sursa (job #1869698) | Cod sursa (job #1409262) | Cod sursa (job #1811740)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ("rucsac.in");
ofstream g ("rucsac.out");
int a[10005],n,i,j,gmax,lmax,x,y,sol;
void initializare ()
{
for(i=1;i<=gmax;i++)
a[i]=-1;
}
int main()
{ f>>n>>gmax;
initializare();
f>>x>>y;
lmax=x;
a[x]=y;
for(i=2;i<=n;i++)
{
f>>x>>y;
for(j=lmax;j>=0;j--)
{
if(a[j]!=-1&&x+j<=gmax)
{
a[x+j]=max(y+a[j],a[x+j]);
sol=max(sol,a[x+j]);
lmax=max(lmax,x+j);
}
}
}
g<<sol;
return 0;
}