Cod sursa(job #2767815)

Utilizator andreimocianAndrei Mocian andreimocian Data 7 august 2021 21:43:34
Problema Problema rucsacului Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int n, g, w, p;
int dp[2][1005];

int main()
{
    bool var = 1;
    fin >> n >> g;
    for(int i = 1; i <= n; i++)
    {
        fin >> w >> p;
        for(int j = 0; j <= g; j++)
        {
            dp[var][j] = dp[1-var][j];
            if(j >= w)
            {
                dp[var][j] = max(dp[var][j], dp[1-var][j-w] + p);
            }
        }
        var = 1 - var;
    }
    var = 1 - var;
    fout << dp[var][g];
    return 0;
}