Cod sursa(job #60731)

Utilizator O_NealS. Alex O_Neal Data 16 mai 2007 10:45:28
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream.h>

double n,i,j,inter,g,w,aux,nr,eg[10002],cg[10002],y[10002],prim;

double x[10002];


   int main ()

	 {
		ofstream fout("energii.out");

		ifstream fin("energii.in");

		fin>>g>>w;

		for ( i=1; i<=g ; i++ )

			 fin>>eg[i]>>cg[i];

		for (i=1; i<=g; i++)

			  aux+=eg[i];

		if(aux<g) { fout<<-1; return 0; }

		for ( i=1; i<=g; i++ )

			{ x[i]=(float)eg[i]/(float)cg[i]; y[i]=i; }


		inter=1;

		while(inter)
		   {
			  inter=0;

			  for(i=1;i<g;i++)

				 if(x[i]<x[i+1]) { aux=x[i];

								   x[i]=x[i+1];

								   x[i+1]=aux;

								   inter=1;

								   aux=y[i]; y[i]=y[i+1]; y[i+1]=aux;}

		   }

		aux=0;  i=0;

		while(aux<w)

		 {
			aux+=cg[y[++i]];

		 }

		fout<<aux;



		fin.close();

		fout.close();

		return 0;
	 }