Cod sursa(job #2797281)

Utilizator Casian_doispeChiriac Casian Casian_doispe Data 9 noiembrie 2021 17:53:29
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>
#include <climits>
#include <vector>
#include <algorithm>

using namespace std;

ifstream cin("podm.in");
ofstream cout("podm.out");

long long dp[3][100009] ;

int main()
{
    int n, g ;

    cin >> n >> g ;

    for(int f = 1, a, b ; f <= n ; f ++)
    {
        cin >> a >> b ;

        for(int e = a ; e <= g ; e ++)
            dp[f % 2][e] = max({dp[(f + 1) % 2][e - a] + b, dp[(f + 1) % 2][e]}) ;
    }

    cout << dp[n % 2][g] ;

    return 0;
}