Cod sursa(job #1258838)

Utilizator CostinVFMI CostinVictorGabriel CostinV Data 9 noiembrie 2014 14:45:19
Problema Lupul Urias si Rau Scor 16
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2014, Anul II Marime 0.61 kb
#include <fstream>
#include <vector>
#include <algorithm>

using namespace std;

bool comp (pair<int, int> x, pair<int, int> y)
{
	if(x.first < y.first || x.first > y.first)
		return x.first<y.first;
	
	return x.second>y.second;
}

int main()
{
	ifstream in ("lupu.in");
	ofstream out ("lupu.out");

	int  n, x, l, D, L, cl=0, al=0, i;
	in>>n>>x>>l;
	vector<pair<int, int> > oi;
	
	for (i=0; i<n; i++)
	{
		in>>D>>L;
		if(D <= x)
			oi.push_back(make_pair((x-D)/l, L));

	}

	sort(oi.begin(), oi.end(), comp);
	
	for(i=0; i<n; i++)
	{
		if(oi[i].first==al)
		{
			cl+=oi[i].second;
			al++;
		}	
	}
	
	out<<cl;

	
	return 0;
}