Cod sursa(job #832541)

Utilizator andreea29Iorga Andreea andreea29 Data 10 decembrie 2012 21:50:39
Problema Gutui Scor 10
Compilator cpp Status done
Runda teme_upb Marime 0.68 kb
#include<fstream>
#include<algorithm>

#define Nmax 100010

using namespace std;

int n, H, G, r, k, gr;

struct coord 
{
	int x;
	int y;
} bun[Nmax];

int cmp (coord a, coord b)
{
	if (a.x > b.x)
		return 0;
	if (a.x == b.x && a.y < b.y)
		return 0;
	return 1;
}

int main()
{
	ifstream f("gutui.in");
	ofstream h("gutui.out");
	f >> n >> G >> H;
	for (int i = 1; i <= n; ++i)
	{
		f >> r >> bun[i].y;
		bun[i].x = (G - r) / H + 1;		
	}
	f.close();
	
	sort (bun + 1, bun + n + 1, cmp);
	
	k = 0;
	gr = 0;
	
	for (int i = 1; i <= n; ++i)
		if (bun[i].x > k)
		{
			++k;
			gr += bun[i].y;
		}
	
	h << gr << '\n';
	
	h.close();
	return 0;
}