Mai intai trebuie sa te autentifici.

Cod sursa(job #2174331)

Utilizator AdryanR8iurian adrian razvan AdryanR8 Data 16 martie 2018 11:38:02
Problema Problema rucsacului Scor 35
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <iostream>
#include <fstream>
#define MXN 5001
#define MXG 5001
using namespace std;

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

int n,g;
int d[MXN][MXG];
int w[MXN],p[MXN];

int rucsac(int i,int j){
    if(i==0)            return 0;
    if(d[i][j]!=0)      return d[i][j];
    if(j<w[i])          return d[i-1][j]=rucsac(i-1,j);
    return d[i][j]=max(rucsac(i-1,j),rucsac(i-1,j-w[i])+p[i]);
}

int main(){
    fin>>n>>g;
    for(int i=1;i<=n;++i){
        fin>>w[i]>>p[i];
    }
    fout << rucsac(n,g);
    fin.close();
    fout.close();
    return 0;
}