Cod sursa(job #2367848)

Utilizator IonDragosIon Dragos IonDragos Data 5 martie 2019 12:30:59
Problema Problema rucsacului Scor 65
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n,gg,gr[5009],pr[5009],v1[5005],v2[5005];
int main()
{
    f>>n>>gg;
    for(int i=1;i<=n;i++)
    {
        f>>gr[i]>>pr[i];
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=gg;j++)
        {
            if(gr[i]>j)
                v2[j]=v1[j];
            else
                v2[j]=max(v1[j],v1[j-gr[i]]+pr[i]);
        }
        for(int j=1;j<=gg;j++)
        {
            v1[j]=v2[j];
            v2[j]=0;
        }
    }
    g<<v1[gg];
    return 0;
}