Cod sursa(job #2731258)

Utilizator TudosieRazvanTudosie Marius-Razvan TudosieRazvan Data 27 martie 2021 16:50:07
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <fstream>
#define NMAX 10000
using namespace std;

int n,gMax;
long long int dp[NMAX+3];

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

int main()
{
    fin>>n>>gMax;
    for(int i=1; i<=gMax; i++)
    {
        dp[i]=-1;
    }
    dp[0]=0;

    for(int i=1; i<=n; i++)
    {
        long long int g,cost;
        fin>>g>>cost;
        for(int j=gMax-g; j>=0; j--)
        {
            if(dp[j]==-1)
            {
                //nu fac nimic
            }
            else
            {
                //pot sa il adaug in dp
                dp[j+g]=max(dp[j+g],dp[j]+cost);
            }
        }
    }
    fout<<dp[gMax];
    return 0;
}