Cod sursa(job #2197927)

Utilizator BlkAlexAlex Negru BlkAlex Data 23 aprilie 2018 09:35:06
Problema Problema rucsacului Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <bits/stdc++.h>

using namespace std;

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

int w[5010], p[5010], d[5010][10010], n, gr;

void dostuff(){
    f>>n>>gr;
    for (int i=1; i<=n; i++){
        f>>w[i]>>p[i];
    }
}

void dinamica(){
    int i, cw;
    for (i=1; i<=n; i++){
        for (cw=0; cw<=gr; cw++){
            d[i][cw]=d[i-1][cw];
            if (w[i]<=cw){
                d[i][cw]=max(d[i][cw], d[i-1][cw-w[i]]+p[i]);
            }
        }
    }
}

int main()
{
    ios_base::sync_with_stdio(false);
    dostuff();
    dinamica();
    g<<d[n][gr];
    return 0;
}