Cod sursa(job #1786038)
Utilizator | Data | 22 octombrie 2016 11:46:43 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 65 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include <iostream>
#include <cstdio>
using namespace std;
int dp[5005], g,v,gmax,n,m;
int main()
{
freopen("rucsac.in","r",stdin);
freopen("rucsac.out","w",stdout);
scanf("%d %d\n", &n, &gmax);
for(int i=0;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);
m=max(m,dp[j]);
}
}
printf("%d", m);
return 0;
}