Pagini recente » Cod sursa (job #1717728) | Cod sursa (job #2109079) | Cod sursa (job #375531) | Cod sursa (job #1299745) | Cod sursa (job #3240634)
#include <bits/stdc++.h>
using namespace std;
const int MAX = 3 * 1e5;
int N, X, L;
pair<int, int> A[MAX + 3];
long long ans;
priority_queue<int>pq;
int main() {
freopen("lupu.in", "r", stdin);
freopen("lupu.out", "w", stdout);
cin.tie(0);
cout.tie(0);
ios_base::sync_with_stdio(false);
cin >> N >> X >> L;
for(int i = 1; i <= N; i++) {
cin >> A[i].first >> A[i].second;
}
sort(A + 1, A + N + 1);
int i = 1;
for(int T = X % L; T <= X; T += L) {
while(i <= N && A[i].first <= T) {
pq.push(A[i].second);
i++;
}
if(!pq.empty()) {
ans += pq.top();
pq.pop();
}
}
cout << ans;
}