Cod sursa(job #1512131)

Utilizator EmpiriusEm Pirius Empirius Data 27 octombrie 2015 18:45:05
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>
#define dim 100005
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int n,i,g,j,d[dim],a,b,maxim;
int main(){
    fin>>n>>g;
    for(i=1;i<=g;i++){
        d[i]=-1;
    }
    for(i=1;i<=n;i++){
        fin>>a>>b;
        for(j=g-a;j>=0;j--){
            if(d[j+a]<d[j]+b && d[j]!=-1 ){
                d[j+a]=d[j]+b;
            }
        }
    }

    for(i=1;i<=g;i++){
        maxim=max(d[i],maxim);
    }
    fout<<maxim<<"\n";

    return 0;
}