Cod sursa(job #1811369)

Utilizator circeanubogdanCirceanu Bogdan circeanubogdan Data 21 noiembrie 2016 10:18:45
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#include <cmath>
#include <iomanip>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n,G,i,s1,x,t,s2,cw,w[5002],p[5002],d[5002][10002];
int main()
{
    f>>n>>G;
    for(i=1; i<=n; i++)
    {
        f>>w[i]>>p[i];
    }
    for(i=1; i<=n; i++)
    {
        for(cw=1; cw<=G; cw++)
        {
            x=abs(t-1);
            s2=d[x][cw];
            d[t][cw]=s2;
            if(w[i]<=cw)
            {
                s1=d[x][cw-w[i]]+p[i];
                d[t][cw]=max(s1,s2);
            }

        }
        t=abs(t-1);
    }
    t=abs(t-1);
    g<<d[t][G];
    return 0;
}