Pagini recente » Cod sursa (job #675711) | Cod sursa (job #2464829) | Cod sursa (job #2975919) | Cod sursa (job #2797160) | Cod sursa (job #781093)
Cod sursa(job #781093)
#include <iostream>
#include <algorithm>
#include <vector>
#include <queue>
#include <cstdio>
using namespace std;
pair <int, int> p[100005];
priority_queue < int, vector <int>, less <int> > heap;
int main()
{
freopen("lupu.in", "r", stdin);
freopen("lupu.out", "w", stdout);
int n, x, l;
cin >> n >> x >> l;
for(int i = 1; i <= n; ++ i){
cin >> p[i].first >> p[i].second;
}
sort(p + 1, p + n + 1);
int sum (0);
int j = 1;
for(int i = 0; i <= x; i += l){
for(; p[j].first <= i && j <= n; ++ j){
heap.push(p[j].second);
}
if(heap.size()){
sum += heap.top();
heap.pop();
}
}
cout << sum;
return 0;
}