Cod sursa(job #2276817)

Utilizator AlexPascu007Pascu Ionut Alexandru AlexPascu007 Data 5 noiembrie 2018 14:16:21
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>
using namespace std;
#define DIM 10010
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int N,G,g[DIM/2],p[DIM/2],d[DIM],i,j,maxim;
int main() {
    fin>>N>>G;
    for (i=1;i<=N;i++) {
        fin>>g[i]>>p[i];
    }
    d[0]=1;
    for (i=1;i<=N;i++) {
        for (j=G;j>=0;j--) {
            if (d[j]!=0&&j+g[i]<=G)
                d[j+g[i]]=max(d[j+g[i]],d[j]+p[i]);
        }
    }
    for (i=0;i<=G;i++)
        maxim=max(maxim,d[i]);
    fout<<maxim-1;
    return 0;
}