Pagini recente » Cod sursa (job #682351) | Cod sursa (job #847819) | Cod sursa (job #1830562) | Cod sursa (job #2152615) | Cod sursa (job #2286677)
#include <fstream>
#include<queue>
#include<algorithm>
using namespace std;
struct oi
{
int d,p;
};
int n,x,l;
oi v[100000];
priority_queue<int> m_oi;
ifstream f("lupu.in");
ofstream g("lupu.out");
bool cmp(oi a,oi b)
{
return a.d<b.d;
}
int main()
{
f>>n>>x>>l;
for(int i=0;i<n;++i) f>>v[i].d>>v[i].p;
sort(v,v+n,cmp);
long long i=0,pr=0;
for(int dist=x%l;dist<=x;dist+=l)
{
while(v[i].d<=dist && i<n) m_oi.push(v[i++].p);
if(m_oi.empty()) continue;
pr+=m_oi.top();
m_oi.pop();
}
g<<pr<<'\n';
return 0;
}