Cod sursa(job #3204102)

Utilizator andreea_zahaZaharia Andreea andreea_zaha Data 15 februarie 2024 17:47:30
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <iostream>

using namespace std;

int n, G, w[5003], p[5003], x, y, dp[5004][5004], lc[5004], lp[5004];

int main()
{
    cin >> n;
    cin >> G;
    for (int i=1; i<=n; i++)
    {
        cin >> x >> y;
        w[i]=x;
        p[i]=y;
    }
    for (int i=1; i<=n; i++)
        {
            for (int g=w[i]; g<=G; g++)
            {
                lc[g]=max(lp[g],lp[g-w[i]]+p[i]);
            }
            for (int j=1; j<=G; j++)
                lp[j]=lc[j];
        }
    cout << lc[G];
    return 0;
}