Cod sursa(job #1658090)

Utilizator vlad6001Pintilie Vlad vlad6001 Data 21 martie 2016 08:43:37
Problema Problema rucsacului Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>
using namespace std;

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

long long l1[10050], l2[10050], maxim;
int i, j, valoare, greu, nr, greutate;

int main()
{
    fin >> nr >> greutate;

    l1[0] = 1;
    l2[0] = 1;

    for(i=1; i <= nr; i++)
    {
        fin >> greu >> valoare;
        for(j=greu; j <= greutate; j++)
        {
            if(l1[j-greu] != 0)
            {
                l2[j] = max(l2[j], l1[j-greu]+valoare);
            }
        }
        for(j=1; j <= greutate; j++)
            l1[j] = l2[j];
    }
    for(i=1; i <= greutate; i++)
    {
        maxim=max(maxim, l2[i]-1);
    }
    fout << maxim;
}