Pagini recente » Cod sursa (job #3215600) | Cod sursa (job #2678370) | Cod sursa (job #3158782) | Cod sursa (job #3190054) | Cod sursa (job #3272910)
#include <bits/stdc++.h>
using namespace std;
class comp {
public:
bool operator()(pair<int, int> a, pair<int, int> b) {
if (1ll * (a.first + a.second) / 2 == 1ll * (b.first + b.second) / 2) {
return a.second < b.second;
}
return 1ll * (a.first + a.second) / 2 < 1ll * (b.first + b.second) / 2;
}
};
int n, x, l;
priority_queue<pair<int, int>, vector<pair<int, int>>, comp> q;
int main() {
ifstream cin("lupu.in");
ofstream cout("lupu.out");
cin >> n >> x >> l;
for (int i = 1; i <= n; ++i) {
int d, c;
cin >> d >> c;
q.push({d, c});
}
long long dist = 0, ans = 0;
while (!q.empty()) {
if (x >= 1ll * q.top().first + dist) {
ans += q.top().second;
dist += l;
}
q.pop();
}
cout << ans;
}