Cod sursa(job #94169)

Utilizator mihai0110Bivol Mihai mihai0110 Data 21 octombrie 2007 20:55:17
Problema Energii Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream.h>
int i,j,n,w,e[1002],c[1002];
long s,cost;
float aux,ef[1002];
ifstream f("energii.in");
ofstream g("energii.out");
int main()
{
f>>n>>w;
for(i=1;i<=n;i++)
{
f>>e[i]>>c[i];
ef[i]=(float)e[i]/c[i];
}
for(i=1;i<=n-1;i++)
for(j=i+1;j<=n;j++)
if(ef[i]<ef[j])
{
aux=ef[i];
ef[i]=ef[j];
ef[j]=aux;
aux=e[i];
e[i]=e[j];
e[j]=aux;
aux=c[i];
c[i]=c[j];
c[j]=aux;
}
s=0;
cost=0;
i=1;
while(i<=n&&s<w)
{
s=s+e[i];
cost=cost+c[i];
i++;
}
if(s<w)
g<<"-1";
else
g<<cost;
g<<'\n';
f.close();
g.close();
return 0;
}