Pagini recente » Cod sursa (job #1010237) | Arhiva de probleme | Istoria paginii jc2021/solutii/perrynator | Cod sursa (job #3193784) | Cod sursa (job #1532845)
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
int main()
{
ifstream fin("energii.in");
ofstream fout("energii.out");
int t, e, a[1002], b[1002]; double c[1002];
fin >> t;
fin >> e;
for (int i = 1; i <= t; i++)
{
fin >> a[i] >> b[i];
c[i] = (b[i]*1.00)/ a[i];
}
bool u;
do {
u = false;
for(int j = 1; j <= t; j++)
if(c[j] < c[j-1])
{
swap(c[j],c[j-1]);
swap(a[j],a[j-1]);
swap(b[j],b[j-1]);
u = true;
}
} while (u);
for (int i = 1; i <= t; i++) cout << c[i] << " ";
int energie = 0, suma = 0;
int i = 1;
while (energie < e && i <= t)
{
energie += a[i];
suma += b[i];
i++;
}
cout << energie;
if (energie >= e)
fout << suma;
else fout << "-1";
return 0;
}