Cod sursa(job #1535165)

Utilizator andrei-sasAndrei Sas-Miresan andrei-sas Data 24 noiembrie 2015 13:36:52
Problema Energii Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream f("energii.in");
ofstream g("energii.out");

struct en
{
    int e,c;
    double r;
};

int ordo1(en A, en B)
{
    return(A.r<B.r);
}

/*int ordo2(en A, en B)
{
    return(A.e>B.e);
}*/

int n,i,m,k,s;
en S[1001];
int main()
{
    f>>n>>m;
    for(i=1;i<=n;i++)
    {
        f>>S[i].e>>S[i].c;
        S[i].r=((double)S[i].c)/S[i].e;
    }
    //sort(S+1,S+n+1,ordo2);
    sort(S+1,S+n+1,ordo1);
    //for(i=1;i<=n;i++)
        //g<<S[i].e<<" "<<S[i].c<<" "<<S[i].r<<'\n';
    i=1;
    while(k<m)
    {
        if(i==n)
        {
            k=m;
            s=-1-S[i].c;
        }
        k=k+S[i].e;
        s=s+S[i].c;
        i++;
    }
    g<<s;
    f.close();
    g.close();
    return 0;
}