Cod sursa(job #2138223)

Utilizator omegasFilip Ion omegas Data 21 februarie 2018 14:27:11
Problema Problema rucsacului Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>


using namespace std;

ifstream fin("rucsac.in");
ofstream fout("rucsac.out");

int v[10000];
int w[10000];
int m[2][5001];


int main()
{
    int n,g,i,j;
    fin >> n >> g;
    for(i=1;i<=n;++i)
        fin >> w[i] >> v[i];

    for(j=0;j<=g;++j)
        m[0][j] = 0;
    int t = 1;

    for(i=1;i<=n;++i,t=1-t)
    for(j=0;j<=g;++j)
            if(j >= w[i])
                m[t][j] = max(m[1-t][j-w[i]] + v[i],m[1-t][j]);
            else
                m[t][j] = m[1-t][j];

    fout << m[1-t][g];
    return 0;
}