Cod sursa(job #3278733)

Utilizator PredaBogdanPreda Bogdan PredaBogdan Data 20 februarie 2025 17:26:11
Problema Problema rucsacului Scor 65
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <bits/stdc++.h>
using namespace std;

ifstream f("rucsac.in");
ofstream g("rucsac.out");

struct rucsac {
    int w, p;
} item[5001];

int main(void) {
    int n, maxG, dp[10001];
    f >> n >> maxG;
    for (int i = 0; i < n; i++) {
        f >> item[i].w >> item[i].p;
    }

    dp[0] = 0;

    int maxVal = 0;
    for (int i = 0; i < n; i++) {
        for (int j = maxG - item[i].w; j >= 0; j--) {
            dp[j + item[i].w] = max(dp[j + item[i].w], dp[j] + item[i].p);
            maxVal = max(maxVal, dp[j + item[i].w]);
        }
    }

    g << maxVal;
}