Cod sursa(job #1618919)

Utilizator CodrutLemeniCodrut Lemeni CodrutLemeni Data 28 februarie 2016 09:34:07
Problema Problema rucsacului Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.63 kb
#include <stdio.h>
#include <stdlib.h>


int v[10001];
int main(){
    int i,n,max=-1,g,j;
    int gi,pi;

    freopen("rucsac.in","r",stdin);
    freopen("rucsac.out","w",stdout);


    scanf("%d%d",&n,&g);

    for(i=1;i<=g;i++){
        v[i]=-1;
    }

    for(i=0;i<n;i++){
        scanf("%d%d",&gi,&pi);

        for(j=g-gi;j>=0;j--){
            if(v[j]!=-1){
                if(v[j+gi]<v[j]+pi){
                    v[j+gi]=v[j]+pi;
                }
            }
        }
    }
    for(i=1;i<=g;i++){
        if(max<v[i]){
            max=v[i];
        }
    }

    printf("%d",max);
    return 0;
}