Cod sursa(job #2193384)

Utilizator Narvik13Razvan Roatis Narvik13 Data 9 aprilie 2018 21:37:35
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <iostream>
#include <fstream>
#define GMAX 10002
#define NMAX 5002

using namespace std;

ifstream f("rucsac.in");
ofstream o("rucsac.out");

int dp[GMAX], gt;
int n,g;

int main()
{
    f >> n >> g;
    int w,p;
    for(int i = 1; i <= n; ++i)
    {
        f >> w >> p;
        gt = min(gt+w,g);

        for(int j = gt; j >= w; --j)
            dp[j] = max(dp[j],dp[j-w]+p);
    }
    int mmx = -1;
    for(int i = 1; i <= g; ++i)
        mmx = max(mmx, dp[i]);

    o << mmx << '\n';
    return 0;
}