Cod sursa(job #1652805)

Utilizator dorin31Geman Dorin Andrei dorin31 Data 15 martie 2016 14:17:06
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>

#define maxG 10010

using namespace std;

ifstream fin("rucsac.in");
ofstream fout("rucsac.out");

int N,G,maxim;
int d[maxG];

int main()
{
    int g,v;
    fin>>N>>G;
    for (int i=1; i<=N; ++i)
    {
        fin>>g>>v;
        for (int j=G; j>=1; --j)
            if (d[j] && j+g<=G)
                if (d[j+g]<d[j]+v)
            {
                d[j+g]=d[j]+v;
                if (d[j+g]>maxim) maxim=d[j+g];
            }
        d[g]=max(d[g],v);
    }
    fout<<maxim;
    return 0;
}