Cod sursa(job #2286378)

Utilizator claraaaSima Clara claraaa Data 20 noiembrie 2018 10:25:31
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>
#define GMAX 10005
#define NMAX 5005

using namespace std;

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

int n, G;
int cmax [GMAX];
int c[GMAX];
int g[NMAX];

void citire();
void pd();
void afisare();

int main()
{
    citire();
    pd();
    afisare();
    return 0;
}

void citire()
{
    int i;
    fin>>n>>G;
    for(i=1;i<=n;i++)
        fin>>g[i] >> c[i];
}

void pd()
{
    int i,x;
    for(i=1;i<=n;i++)
        for(x=G;x>=1;x--)
            if(x>=g[i])
                if(cmax[x]<c[i]+cmax[x-g[i]])
                    cmax[x]=c[i]+cmax[x-g[i]];
}

void afisare()
{
    fout<< cmax[G] << '\n';
}