Cod sursa(job #3134954)

Utilizator mire123Mircea Lupu mire123 Data 31 mai 2023 23:31:38
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.93 kb
#include <bits/stdc++.h>
using namespace std;

int rez[10000];

int main()
{
    ifstream fin("rucsac.in");
    ofstream fout("rucsac.out");
    int G, N;
    fin >> N >> G;
    int w[5000], p[5000];

    for (int i = 1; i <= N; i++)
    {
        fin >> w[i] >> p[i];
    }
    // fiecare profit din matrice
    // for (int i = 1; i <= N; i++)
    // {
    //     for (int j = 1; j <= G; j++)
    //     {
    //         if (j < w[i - 1])
    //         {
    //             arr[i][j] = arr[i - 1][j];
    //         }
    //         else
    //         {
    //             arr[i][j] = max(arr[i - 1][j], arr[i - 1][j - w[i - 1]] + p[i - 1]);
    //         }
    //     }
    // }

    //---o linie
    for (int i = 1; i <= N; i++)
    {
        for (int j = G; j >= w[i]; j--)
        {
            rez[j] = max(rez[j], rez[j - w[i]] + p[i]);
        }
    }

    fout << rez[G] << endl;

    return 0;
}