Cod sursa(job #609714)

Utilizator anna_bozianuBozianu Ana anna_bozianu Data 22 august 2011 22:49:31
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<cstdio>
#define max(u,v) u>v?u:v;
int N,G,P[10001],g,p,i,j;
int main()
{
    freopen("rucsac.in","r",stdin);
    freopen("rucsac.out","w",stdout);
    scanf("%d%d",&N,&G);
    for(i=1;i<=G;i++)P[i]=-50000001;
    for(;N;N--)
    {
        scanf("%d%d",&g,&p);
        for(i=G,j=G-g;j>=0;i--,j--)
            P[i]=max(P[i],P[j]+p);
    }
    for(i=1,p=0;i<=G;i++)p=max(p,P[i]);
    printf("%d\n",p);
    return 0;
}