Cod sursa(job #904937)

Utilizator alexx9363Mircea Stefan Alexandru alexx9363 Data 5 martie 2013 01:32:04
Problema Energii Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include<fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
float nrg,nre,e[10002],c[10002],w[10002];
int cost=0;
void cit(){
    int i;
    fin>>nrg>>nre;
    for(i=1;i<=nrg;i++){
        fin>>e[i]>>c[i];
        w[i]=c[i]/e[i];
    }
}
void bubble(){
    int i,j;
    float aux;
    for(j=1;j<=nrg-1;j++)
        for(i=j+1;i<=nrg;i++)
            if(w[j]>w[i]){
                aux=w[j];
                w[j]=w[i];
                w[i]=aux;

                aux=e[j];
                e[j]=e[i];
                e[i]=aux;

                aux=c[j];
                c[j]=c[i];
                c[i]=aux;
            }

}

void problema(){
    int i=1;
    while(nre>0){
        cost=cost+c[i];
        nre=nre-e[i];
        i++;
    }
}

int main(){
    cit();
    bubble();
    problema();
    fout<<cost<<'\n';
    fin.close();
    fout.close();
    return 0;
}