Cod sursa(job #682935)

Utilizator alexalghisiAlghisi Alessandro Paolo alexalghisi Data 19 februarie 2012 19:00:57
Problema Problema rucsacului Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include <cstdio>
#include <algorithm>
using namespace std;

int dp[10005][10005];

int main()
{
	int n,G,g,p;
	freopen("rucsac.in","r", stdin);
	freopen("rucsac.out","w", stdout);
	scanf("%d %d",&n,&G);
	for(int i=1;i<=n;i++)
	{
		scanf("%d %d",&g,&p);
		for(int j=1;j<=G;j++)
		{
			dp[i][j]=dp[i-1][j];
			if(g<=j)
				dp[i][j]=max(dp[i][j],dp[i-1][j-g]+p);
		}
	}
	printf("%d",dp[n][G]);

	return 0;
}