Pagini recente » Borderou de evaluare (job #3330321) | Borderou de evaluare (job #1229722) | Cod sursa (job #3313862) | Cod sursa (job #3345451) | Cod sursa (job #3340922)
#include <stdio.h>
#include <algorithm>
using namespace std;
int n,s,d[10001],t[10001],i,j,p[10001],G[10001],sol;
int main()
{
FILE *f=fopen("rucsac.in","r");
FILE *g=fopen("rucsac.out","w");
fscanf(f,"%d%d",&n,&s);
for(i=1;i<=n;i++)
fscanf(f,"%d%d",&G[i],&p[i]);
d[0]=1;
for(i=1;i<=n;i++)
for(j=s;j>=0;j--)
if(d[j] && j+G[i]<=s)
{
d[j+G[i]]=max(d[j+G[i]],p[i]+d[j]);
sol=max(sol,d[j+G[i]]);
}
fprintf(g,"%d",sol-1);
}