Pagini recente » Cod sursa (job #195303) | Cod sursa (job #2720209) | Cod sursa (job #3004) | Cod sursa (job #2838702) | Cod sursa (job #1402342)
#include <fstream>
#include <queue>
using namespace std;
const long long stride=0x100000000;
const long long wool_mask=0xFFFFFFFF;
int main()
{
ifstream in("lupu.in");
ofstream out("lupu.out");
long n, x, l, a, b, ctr;
long long aux, sum=0;
priority_queue<long long> pq;
in>>n>>x>>l;
for(long i=0; i<n; ++i)
{
in>>a>>b;
a=1+(x-a)/l;
aux=a*stride+b;
pq.push(aux);
}
ctr=pq.top()/stride;
for(long i=ctr; i>0&&!pq.empty(); --i)
{
if(i<=pq.top()/stride)
{
sum+=wool_mask&pq.top();
pq.pop();
}
}
out<<sum;
return 0;
}