Cod sursa(job #1570360)

Utilizator Vasile_RotaruVasea Rotaru Vasile_Rotaru Data 16 ianuarie 2016 14:04:01
Problema Energii Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include<fstream>
#include<algorithm>
using namespace std;

ifstream fin("energii.in");
ofstream fout("energii.out");

struct eg
{
	int c,e;
};

int g,w,i,e=0,c=0;;
eg a[1001];

bool cmp(eg a,eg b)
{
	return((double)a.c/a.e<=(double)b.c/b.e);
}

int main()
{
	fin>>g;
	fin>>w;
	for(i=1;i<=g;++i)fin>>a[i].e>>a[i].c;
	sort(a+1,a+g+1,cmp);
	for(i=1;i<=g && e<w;++i)
	{
		e+=a[i].e;
		c+=a[i].c;
	}
	if(e>=w)fout<<c;
	else fout<<-1;
	return 0;
}