Cod sursa(job #1752749)

Utilizator TrascaAndreiTrasca Andrei TrascaAndrei Data 5 septembrie 2016 00:41:13
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <iostream>
#include <fstream>
#define N 1001
#define G 5001

using namespace std;

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

ifstream fin("energii.in");
ofstream fout("energii.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;
}