Cod sursa(job #1850213)

Utilizator TrascaAndreiTrasca Andrei TrascaAndrei Data 18 ianuarie 2017 12:37:45
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#define N 5010
#define G 10010

using namespace std;

int n,g;
int w[N],p[N],d[2][G];

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

int main()
{
    fin>>n>>g;
    int i,j;
    for(i=1;i<=n;i++)
        fin>>w[i]>>p[i];
    int l=0;
    for(i=1;i<=n;i++,l=1-l)
        for(j=0;j<=g;j++){
            d[1-l][j]=d[l][j];
            if(w[i]<=j)
                d[1-l][j] = max(d[1-l][j],d[l][j-w[i]]+p[i]);
        }
    fout<<d[l][g];
    return 0;
}