Cod sursa(job #2450227)

Utilizator adiaioanaAdia R. adiaioana Data 22 august 2019 13:02:45
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");

int N,G,answer, W[5050], P[5050], nr[10100];
int main()
{
    cin>>N>>G;
    for(int i=1; i<=N; ++i)
    {
        cin>>W[i]>>P[i];
        //nr[W[i]]=max(nr[W[i]],P[i]);
    }

    for(int i=1; i<=N; ++i)
        for(int g=G; g>=0; --g)
        {
            if(g>=W[i])
                nr[g]=max(nr[g],nr[g-W[i]]+P[i]);

            if(answer<nr[g])
                answer=nr[g];// cout<<nr[g]<<' '<<g<<' '<<i<<endl;
        }

    cout<<answer<<'\n';
    return 0;
}