Cod sursa(job #1494573)

Utilizator sandupetrascoPetrasco Sandu sandupetrasco Data 1 octombrie 2015 14:08:23
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <fstream>
#include <algorithm>
using namespace std;
int D[2][10003], G[5002], P[5002],N,Gr;
bool u=0;
int main(){
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
fin>>N>>Gr;
for (int i=1; i<=N; i++) fin>>G[i]>>P[i];
for (int i=1; i<=N; i++,u=!u) 
    for (int j=1; j<=Gr; j++)
        {D[u][j]=D[!u][j];
        if(j>=G[i]){
        D[u][j]=max(D[!u][j],D[!u][j-G[i]]+P[i]);
        }
        }
fout<<D[!u][Gr];
return 0;
}