Cod sursa(job #3030519)

Utilizator t_avramAvram Tudor t_avram Data 17 martie 2023 18:28:51
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream cin("rucsac.in");
ofstream cout("rucsac.out");

int n, greutate, Max;

int g[5001], p[5001], dp[10001];
int main()
{
    cin >> n >> greutate;
    for (int i = 1; i <= n; i++)
    {
        cin >> g[i] >> p[i];
    }

    for (int i = 1; i <= n; i++)
    {
        for (int j = greutate - g[i]; j >= 0; j--)
        {
            if (dp[j] + p[i] > dp[j + g[i]])
            {
                dp[j + g[i]] = dp[j] + p[i];
                if (dp[j + g[i]] > Max) Max = dp[j + g[i]];
            }
        }
    }
    cout << Max;
    return 0;
}