Pagini recente » Cod sursa (job #2236814) | Cod sursa (job #176247) | Cod sursa (job #1292225) | Cod sursa (job #779747) | Cod sursa (job #963584)
Cod sursa(job #963584)
#include <fstream>
#include <set>
#include <vector>
#include <algorithm>
using namespace std;
ifstream f("lupu.in"); ofstream g("lupu.out");
int n, x, l, d, q;
vector<pair<int, int> > v;
set<int> s;
int main()
{
int sol = 0;
f >> n >> x >> l;
for(int i = 1; i <= n; ++i)
{
s.insert(-i);
f >> d >> q;
v.push_back(make_pair(-q, d));
}
sort(v.begin(), v.end());
set<int> :: iterator it;
for(int i = 0; i < n; ++i)
{
int t = (x - v[i].second) / l + 1;
it = s.find(-t);
if(it != s.end())
{
sol -= v[i].first;
s.erase(it);
}
}
g << sol << '\n';
g.close();
return 0;
}