Cod sursa(job #2002951)

Utilizator murzacionMurzac Ion murzacion Data 21 iulie 2017 12:08:41
Problema Energii Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
struct generator
{
    double eg;
    double ec;
    double r;
};
bool cmp(generator x, generator y)
{
    return x.r<y.r;
}
generator t[1011];
int i,j,n,w,wmax,cost;
int main()
{
    fin>>n;
    fin>>wmax;
    for(i=1;i<=n;i++)
    {
        fin>>t[i].eg>>t[i].ec;
        t[i].r=t[i].ec/t[i].eg;
    }
    sort(t+1,t+n+1,cmp);
    w=0;
    cost=0;
    i=1;
    while ((w<wmax)&&(i<=n))
    {
            cost+=t[i].ec;
            w+=t[i].eg;
            i++;
    }
    if (w<wmax) fout<<-1;
        else fout<<cost;
    return 0;
}