Pagini recente » onis-2014/clasament | Cod sursa (job #202802) | Arhiva de probleme | Cod sursa (job #694554) | Cod sursa (job #465664)
Cod sursa(job #465664)
#include <cstdio>
#include <queue>
#include <algorithm>
#define DN 100002
using namespace std;
int main()
{
priority_queue <float> A;
priority_queue <float> B;
int n,i,cont;
float x,y,z,record,suma=0,a,b;
freopen("minim2.in","r",stdin);
freopen("minim2.out","w",stdout);
scanf("%d",&n);
for(i=1; i<=n; i++) {
scanf("%f",&x);
suma+=x;
A.push(x);
}
scanf("%f %f %f",&a,&b,&record);
if(suma<record) printf("0\n");
else {
x=A.top();
A.pop();
suma-=x;
x=x*a;
suma+=x;
B.push(x);
for(cont=1; suma>record; cont++) {
if(!A.empty()) {
x=A.top();
y=B.top();
if(x-(x*a)>y-(y*b)) {
suma-=x;
suma+=x*a;
A.pop();
B.push(x*a);
}
else {
suma-=y;
suma+=y*b;
B.pop();
B.push(y*b);
}
}
else {
y=B.top();
suma-=y;
suma+=y*b;
B.pop();
B.push(y*b);
}
}
printf("%d\n",cont);
}
return 0;
}