Cod sursa(job #2320695)

Utilizator Dan201399Frimu Daniel Dan201399 Data 15 ianuarie 2019 00:39:22
Problema Problema rucsacului Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
using namespace std;

int knapsack(int val[], int wt[], int n, int c)
{
    int v[c] = {0};
    for (int i = 0; i < n; i++)
    {
        for (int w = c; w >= wt[i]; w--)
        {
            v[w] = max(v[w], (val[i]+v[w-wt[i]]));
        }
    }
    return v[c];
}

int main()
{
    ifstream f;
    f.open("rucsac.in");
    ofstream g("rucsac.out");
    int n, c, val[5000], wt[5000];
    f >> n >> c;

    for (int i = 0; i < n; i++)
    {
        f >> wt[i] >> val[i];
    }
    g << knapsack(val, wt, n, c);
    f.close();
    g.close();

    return 0;
}