Cod sursa(job #3338118)

Utilizator MirainfoTarta Mira Mirainfo Data 31 ianuarie 2026 16:51:15
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
/// Problema rucsacului infoarena
/// sau Rucsac1 #1886 pbInfo

#include <bits/stdc++.h>
using namespace std;


ifstream fin("rucsac.in");
ofstream fout("rucsac.out");


int main()
{
    int n, w, p, wmax, dp[10001] = {0}, pmax = 0; /// profitul maxim pe care il putem avea cu greutatea i

    fin >> n >> wmax;

    pmax = 0;
    for (int i = 1; i <= n; i++)
    {
        fin >> w >> p;
        for (int j = wmax - w; j >= 0; j--)
        {
            dp[j+w] = max(dp[j+w], dp[j]+p);
            pmax = max(pmax, dp[j+w]);
        }
    }
    fin.close();
    fout << pmax;
    fout.close();

    return 0;
}