Pagini recente » Rating Bogdan Gheorghiu (UnSlayne) | Rating Robert Szarvas (robertkarol) | Cod sursa (job #3282950) | Istoria paginii runda/summer-challenge-2021 | Cod sursa (job #2264614)
#include <iostream>
#include <fstream>
using namespace std;
#define gMax 1005
ifstream fin("energii.in");
ofstream fout("energii.out");
int G,W,e[gMax],c[gMax],i,j,Optim[gMax];
int main()
{
fin>>G>>W;int k=0;
for(i=1;i<=G;i++)
{
fin>>e[i]>>c[i];
k=k+e[i];
}
if(k<W)fout<<-1;
else
{
Optim[0] = 0;
int sol = 0;
for( i = 1; i <= G; ++i)
for( j = W - e[i]; j >= 0; --j) {
if( Optim[j+e[i]] < Optim[j] + c[i] )
{
Optim[j+e[i]] = Optim[j] + c[i];
if( Optim[j+e[i]] > sol)
sol = Optim[j+e[i]];
}
}
fout<<sol;
}
}