Cod sursa(job #3154760)

Utilizator VladLuncanLuncan Vlad VladLuncan Data 5 octombrie 2023 23:14:46
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>
#include <algorithm>

using namespace std;

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

int main()
{
    int n, gmax, s[10005] = {}, w, p, val = 0;

    cin >> n >> gmax;
    s[0] = 0;
    for (int i = 1; i <= n; ++i)
    {
        cin >> w >> p;
        for (int j = gmax - w; j >= 0; --j)
        {
            if (s[j] || j == 0)
            {
                if (s[j] + p > s[j + w])
                    s[j + w] = s[j] + p;
            }
        } 
    }

    for (int j = 1; j <= gmax; ++j)
        val = max(val, s[j]);
    
    cout << val;

    return 0;
}