Pagini recente » Cod sursa (job #401655) | Cod sursa (job #2600813) | Cod sursa (job #1604635) | Cod sursa (job #746173) | Cod sursa (job #1400708)
#include <iostream>
#include <fstream>
using namespace std;
struct generator
{
int w, c;
};
int main()
{
ifstream be("energii.in");
ofstream ki("energii.out");
int g, w;
be >> g >> w;
generator asd[g];
be >> asd[0].w >> asd[0].c;
for(int i = 1; i < g; i++)
{
int wi, ci;
be >> wi >> ci;
int optw = wi;
int optc = ci;
for(int j = 0; j < i; j++)
{
if(optw >= w)
{
if(asd[j].w+wi >= w && asd[j].c+ci < optc)
{
optw = asd[j].w+wi;
optc = asd[j].c+ci;
}
}
else
{
if(asd[j].w+wi >= w)
{
optw = asd[j].w+wi;
optc = asd[j].c+ci;
}
else
{
optw = asd[j].w+wi;
optc = asd[j].c+ci;
}
}
}
asd[i].w =optw;
asd[i].c = optc;
}
for(int j = 0; j < g; j++)
cout << asd[j].w << " ";
cout << endl;
for(int j = 0; j < g; j++)
cout << asd[j].c << " ";
if(asd[g-1].w < w)
{
ki << -1;
}
else
ki << asd[g-1].c;
return 0;
}