Pagini recente » Cod sursa (job #2232068) | Cod sursa (job #1216568) | Profil Huvos | Cod sursa (job #1866543) | Cod sursa (job #542830)
Cod sursa(job #542830)
#include <cstdio>
#include <algorithm>
#include <queue>
using namespace std;
priority_queue <int> h;
struct nod
{int d,l;} v[100002];
int cmp(const nod &x,const nod &y)
{ return x.d<=y.d; }
int main()
{
long long n,i,nr=0,x,l,d=0,sol=0;
freopen("lupu.in","r",stdin);
freopen("lupu.out","w",stdout);
scanf("%lld %lld %lld",&n,&x,&l);
for (i=1;i<=n;++i)
{
scanf("%d %d",&v[nr+1].d,&v[nr+1].l);
if (v[nr+1].d<=x) ++nr;
}
sort(v+1,v+nr+1,cmp);
for (i=1;i<=nr&&d<=x;d+=l)
{
while ((i<=n) && (v[i].d<=d))
h.push(v[i].l),++i;
if (h.size())
{
sol+=h.top();
h.pop();
}
}
printf("%lld",sol);
return 0;
}