Cod sursa(job #1153353)

Utilizator tudi98Cozma Tudor tudi98 Data 25 martie 2014 13:36:31
Problema Problema rucsacului Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <fstream>
#define dim 5001
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");

int i,n,G,j,P[dim],w[dim];
long a[dim],b[dim];

int main(){

    f>>n>>G;
    for(i=1;i<=n;i++)
    f>>w[i]>>P[i];

    for(i=1;i<=n;i++){
        for(j=0;j<=G;j++){
            a[j]=b[j];
            if(w[i]<=j) a[j]=max(b[j],b[j-w[i]]+P[i]);
        }
        for(j=0;j<=G;j++) b[j]=a[j];
    }
    g<<a[G];
}