Cod sursa(job #1786048)
Utilizator | Data | 22 octombrie 2016 11:50:34 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
int n,gmax,dp[100000];
int g,v;
freopen("rucsac.in","r",stdin);
freopen("rucsac.out","w",stdout);
scanf("%d %d\n",&n,&gmax);
for (int i=1; i<=n; i++)
{
scanf("%d %d\n",&g, &v);
for (int j=gmax; j>=g; j--)
{
dp[j]=max(dp[j],dp[j-g]+v);
}
}
printf("%d",dp[gmax]);
return 0;
}