Cod sursa(job #921412)

Utilizator taigi100Cazacu Robert taigi100 Data 20 martie 2013 23:11:41
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include<stdio.h>
#define TheD 5001
#define TheGD 10001

int n,W,w[TheD],v[TheD],d[TheGD],sol;


int main()
{
	freopen("rucsac.in","r",stdin);
	freopen("rucsac.out","w",stdout);

	scanf("%d %d",&n,&W);

	for(int i=1;i<=n;i++)
		scanf("%d%d",&w[i],&v[i]);

	for(int i=1;i<=n;i++)
		for(int j=W-w[i];j >= 0; j--)
			if( d[j+w[i]] < d[j]+v[i])
			{
				d[j+w[i]]=d[j]+v[i];
				if(d[j+w[i]]>sol)
					sol=d[j+w[i]];
			}
	printf("%d",sol);
}