Cod sursa(job #891549)

Utilizator adascaluAlexandru Dascalu adascalu Data 25 februarie 2013 17:44:56
Problema Problema rucsacului Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>
#include<algorithm>
#define MAXN 5001
#define MAXG 10001
using namespace std;
unsigned short int w[MAXN],p[MAXN];
int a[MAXN][MAXG];
int main()
{
    unsigned short int n,gr,i,cw;
    ifstream f("rucsac.in");
    ofstream g("rucsac.out");
    f>>n>>gr;
    for(i=1;i<=n;i++)
        f>>w[i]>>p[i];
    for(i=1;i<=n;i++)
        for(cw=1;cw<=gr;cw++)
            a[i][cw]=max(a[i-1][cw],a[i-1][cw-w[i]]+p[i]);
    g<<a[n][gr];
    f.close();
    g.close();
    return 0;
}