Cod sursa(job #2377583)

Utilizator juganaru.calin@outlook.comJuganaru Calin [email protected] Data 10 martie 2019 17:49:56
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <iostream>
#include <cstdio>
#include <vector>

using namespace std;
 
int main()
{
    freopen("rucsac.in", "r", stdin);
    freopen("rucsac.out", "w", stdout);

    int N, G; cin >> N >> G;
    auto v = vector<pair<int, int>>(N);
    auto sol = vector<int>(G + 1);
    for (auto&& [gr, val]: v)
        cin >> gr >> val;

    for (auto&& [gr, val]: v)
        for(auto j = G; j >= gr; --j)
            if(gr <= j) 
                sol[j] = max(val + sol[j - gr], sol[j]);
    cout << sol[G] << endl;
}