Cod sursa(job #2377584)

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

#define gr  it.first
#define val it.second

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)
    for (auto&& it: v)
        cin >> gr >> val;

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