Cod sursa(job #1547215)

Utilizator superstar1998Moldoveanu Vlad superstar1998 Data 9 decembrie 2015 09:18:06
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>
#define NMAX 5001
#define GMAX 10001
using namespace std;
int n,gmax,cmax[GMAX],g[NMAX],c[NMAX],sol;
int main()
{
    ifstream f("rucsac.in");
    f>>n>>gmax;
    for(int i=1;i<=n;i++)
        f>>g[i]>>c[i];
    for(int i=1;i<=n;i++)
        for(int j=gmax-g[i];j>=0;j--)
            if(cmax[j+g[i]]<cmax[j]+c[i])
            {
                cmax[j+g[i]]=cmax[j]+c[i];
                if(cmax[j+g[i]]>sol) sol=cmax[j+g[i]];
            }
    ofstream g("rucsac.out");
    g<<sol;
    return 0;
}