Cod sursa(job #545989)

Utilizator andreidevaCsiki Andrei andreideva Data 4 martie 2011 11:03:51
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.13 kb
#include <iostream>
#include <fstream>
using namespace std;
long n,m,aux,i,s,s1,j,k;
struct gen{int a,b; float c;};
gen v[1001],w[1001];
int main()
{
    ifstream f("energii.in");
    ofstream g("energii.out");
    f>>n;
    f>>m;
    for(i=1;i<=n;i++)
    {
        f>>v[i].a>>v[i].b;
        v[i].c=(float)v[i].a/v[i].b;
    }
    for(i=1;i<n;i++)
    if(v[i].c<v[i+1].c)
 {
     aux=v[i].a;
     v[i].a=v[i+1].a;
     v[i+1].a=aux;
     aux=v[i].b;
     v[i].b=v[i+1].b;
     v[i+1].b=aux;
     aux=v[i].c;
     v[i].c=v[i+1].c;
     v[i+1].c=aux;
}
j=0;
i=1;
    while(j!=0)
    {
        if(v[i].c>=m)
        j=i;
        i++;
    }
    k=1;
    for(i=j;i<=n;i++)
        {
        w[k].a=v[i].a;
        w[k].b=v[i].b;
        w[k].c=v[i].c;
        k++;
        }
    for(i=1;i<j;i++)
        {
        w[k].a=v[i].a;
        w[k].b=v[i].b;
        w[k].c=v[i].c;
        k++;
        }
    s=0;
    i=1;
    s1=0;
    while(s<m)
        {
        s=w[i].a;
        s1=w[i].b;
        i++;
        }
        if(s1==0)
        g<<-1;
        else
        g<<s1;
    return 0;

}