Cod sursa(job #2095964)

Utilizator usureluflorianUsurelu Florian-Robert usureluflorian Data 28 decembrie 2017 13:50:54
Problema Minim2 Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream>
#include <queue>
using namespace std;
ifstream f ("minim2.in");
ofstream g ("minim2.out");
const int nmax=1e5+3;
int sol,n;
double v[nmax],p,r,a,b,sum,act;
priority_queue < pair <double,double> > q;
int main()
{
    f>>n;
    for(int i=1;i<=n;++i) f>>v[i];
    f>>a>>b>>sum;
    for(int i=1;i<=n;++i)
    {
        act+=v[i];
        p=v[i]-v[i]*a;
        q.push({p,v[i]});
    }
    while(act>sum)
    {
        ++sol;
        p=q.top().first;
        r=q.top().second;
        q.pop();
        act-=p;
        r-=p;
        p=r-r*b;
        q.push({p,r});
    }
    g<<sol;
    return 0;
}