Cod sursa(job #682760)

Utilizator Liviu0010Oprescu Liviu Liviu0010 Data 19 februarie 2012 14:32:41
Problema Energii Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.02 kb
#include<fstream>
#include<algorithm>
using namespace std;

#define COL 2

class rep
{
    int ng,cen, *date;
    float *raport;
    ofstream out;
    ifstream in;
    public:
    rep()
    {
        int i,j;
        in.open("energii.in");
        in>>ng;
        date=new int [ng*ng];
        raport = new float [ng];
        in>>cen;
        for(i=0;i<ng;i++)
        for(j=0;j<COL;j++)
        in>>date[i*ng+j];
        in.close();
    }

    void ordoneaza()
    {
        int i,j;
        for(i=0;i<ng;i++)
        raport[i]=(float)date[i*ng]/date[i*ng+1];

        for(i=0;i<ng;i++)
        for(j=i+1;j<ng;j++)
        if(raport[i]<raport[j])
        {
            swap(raport[i],raport[j]);
            swap(date[i*ng],date[j*ng]);
            swap(date[i*ng+1],date[j*ng+1]);
        }
    }

    void afiseaza()
    {
       int i;
       out.open("energii.out");
       if(date[0]>=cen)
       out<<date[1];
       else
       out<<"-1";
       out.close();
    }
};

int main()
{
    rep p;
    p.ordoneaza();
    p.afiseaza();
}