Cod sursa(job #3353475)

Utilizator G_b_yZamfirache Gabriel G_b_y Data 7 mai 2026 16:55:08
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <bits/stdc++.h>

using namespace std;

#define inf -2000000

int dp[10001];

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

    int n, g, w, p;
    cin >> n >> g;

    for (int i = 1; i <= g; ++i) {
        dp[i] = inf;
    }

    for (int i = 1; i <= n; ++i) {
        cin >> w >> p;
        for (int j = g; j >= w; --j) {
            dp[j] = max(dp[j], dp[j - w] + p);
        }
    }

    int res = -1;
    for (int i = 0; i <= g; ++i) {
        res = max(res, dp[i]);
    }
    cout << res;

    return 0;
}