Cod sursa(job #1768058)

Utilizator mara.priponMara Pripon mara.pripon Data 30 septembrie 2016 09:20:07
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <cstdio>

using namespace std;
int c[10000];
int main()
{
    freopen ("rucsac.in","r",stdin);
    freopen ("rucsac.out","w",stdout);
    int n,g,i,gi,pi,max1=0,j;
    scanf ("%d%d",&n,&g);
    for (i=1;i<=n;i++) {
        scanf ("%d%d",&gi,&pi);
        if (pi)
        for (j=g-gi;j>=0;j--)
            if (j+gi<=g && c[j]+pi>c[j+gi]) {
                c[j+gi]=c[j]+pi;
                if (c[j+gi]>max1)
                    max1=c[j+gi];
            }
    }
    printf ("%d",max1);
    return 0;
}