Cod sursa(job #2239138)

Utilizator lucian2015blaugranadevil lucian2015 Data 9 septembrie 2018 16:00:34
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>

#define maxn 5001
#define maxg 10001
using namespace std;


ifstream f("rucsac.in");
ofstream g("rucsac.out");

int w[maxn], p[maxn], sol;
int optim[maxg], n, G;

int main()
{
    int i, j;
    int n, G;
    f>>n>>G;
    for(i = 1; i <= n; i++)
        f>>w[i]>>p[i];
        optim[0]=0;
    sol = 0;
    for(i = 1; i <= n; ++i)
        for(j = G-w[i]; j>=0; --j)
        {
            if(optim[j+w[i]]<optim[j]+p[i])
            {
                optim[j+w[i]]=optim[j]+p[i];
                if(optim[j+w[i]]>sol)
                    sol=optim[j+w[i]];
            }
        }
    g<<sol;

  return 0;
}