Pagini recente » Cod sursa (job #1634604) | Cod sursa (job #2889309) | Cod sursa (job #2976240) | Cod sursa (job #2575082) | Cod sursa (job #2253557)
#include <iostream>
#include <fstream>
#include <queue>
using namespace std;
ifstream in("minim2.in");
ofstream out("minim2.out");
const int maxn = 100005;
priority_queue <double> pq;
double v[maxn];
int main()
{
int n;
in >> n;
double act = 0;
for(int i = 1; i <= n; i++)
{
in >> v[i];
act = act + v[i];
pq.push(v[i]);
}
double a, b, record;
in >> a >> b >> record;
double p = pq.top();
pq.pop();
pq.push(p * a);
act = act - p + p * a;
while(act >= record)
{
double p = pq.top();
pq.pop();
pq.push(p * b);
act = act - p + p * b;
}
out << act << "\n";
return 0;
}