Cod sursa(job #2019239)

Utilizator lucametehauDart Monkey lucametehau Data 7 septembrie 2017 12:54:03
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <fstream>

using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int n,G,i,s,l,g[5001],c[5001],d[2][10001];
int main()
{
    cin>>n>>G;
    for(i=1;i<=n;i++)
        cin>>g[i]>>c[i];
    for(i=1;i<=n;i++)
        for(s=1;s<=G;s++)
        {
            l=i%2;
            d[1-l][s]=d[l][s];
            if(g[i]<=s)
                d[1-l][s]=max(d[1-l][s],d[l][s-g[i]]+c[i]);
        }
    cout<<d[1-n%2][G];
    return 0;
}