Pagini recente » Cod sursa (job #2931521) | Cod sursa (job #3144852) | Cod sursa (job #2976926) | Cod sursa (job #2349169) | Cod sursa (job #3174308)
#include <fstream>
#include <queue>
#define fi first
#define sc second
using namespace std;
ifstream in("lupu.in");
ofstream out("lupu.out");
int n, x, l;
long long ans;
priority_queue<pair<int, int>> que;
int main()
{
in >> n >> x >> l;
for(int i=1; i<=n; i++) {
int d, a;
in >> d >> a;
int reps = (x - d) % l ? (x - d) / l + 1 : (x - d) / l;
que.push({-reps, a});
}
int timer = 0;
while(!que.empty()) {
if(timer <= -que.top().fi) {
ans += que.top().sc;
timer++;
}
que.pop();
}
out << ans;
return 0;
}