Cod sursa(job #1649094)

Utilizator razvanxdVancea Cosmin Razvan razvanxd Data 11 martie 2016 12:32:19
Problema Problema rucsacului Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <fstream>

using namespace std;

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

long n, g;
long G[10005];
long P[10005];
long V[10005];

int main()
{
    fin >> n >> g;
    for(long i = 1; i <= n; ++i)
        fin >> G[i] >> P[i];

    V[0] = 1;

    for(long i = 1; i <= n; ++i)
    {
        for(long j = g; j >= G[i]; --j)
        {
            if(V[j-G[i]] + P[i] > V[j])
                V[j] = V[j-G[i]] + P[i];
        }
    }

    long maxx = V[1];
    for(long i = 2; i <= g; ++i)
        maxx = max(maxx, V[i]);

    fout << maxx << ' ';
}