Pagini recente » Atasamentele paginii Profil SpirleaDavidCristian | Borderou de evaluare (job #165821) | Cod sursa (job #548492) | Borderou de evaluare (job #954122) | Cod sursa (job #1097005)
#include<stdio.h>
int n,i,j,g,a,b,maxim,maximus;
int f[10001];
int main()
{
freopen("rucsac.in","r",stdin);
freopen("rucsac.out","w",stdout);
scanf("%d%d",&n,&g);
scanf("%d%d",&a,&b);
f[a]=b;
maxim=b;
for(i=2;i<=n;++i)
{
scanf("%d%d",&a,&b);
for(j=maxim;j>=1;--j)
if(f[j]!=0)
{
if((j+a)<=g)
{
f[j+a]=f[j]+b;
if(f[j+a]>=maximus)
maximus=f[j+a];
if((j+a)>maxim)
maxim=j+a;
}
}
if(a<=g)
{
f[a]=b;
if(f[a]>=maximus)
maximus=f[a];
if(a>maxim)
maxim=a;
}
}
printf("%d\n",maximus);
return 0;
}