Pagini recente » Cod sursa (job #1488747) | Monitorul de evaluare | Cod sursa (job #486240) | Cod sursa (job #971368) | Cod sursa (job #848264)
Cod sursa(job #848264)
#include<fstream>
#include<algorithm>
#include<queue>
using namespace std;
ifstream f("lupu.in");
ofstream g("lupu.out");
int i,l,n,x,dist,s;
struct oaie{int d,val;};
oaie a[100110];
bool cmp(oaie a,oaie b)
{
return a.d>b.d;
}
int main()
{
f>>n>>x>>l;
for(i=1;i<=n;++i)
{
f>>dist>>a[i].val;
a[i].d=(x-dist+l)/l;
}
sort(a+1,a+n+1,cmp);
dist=a[1].d;
i=1;
priority_queue<int>v;
while(dist)
{
while(a[i].d==dist&&i<=n)
{
v.push(a[i].val);
++i;
}
if(v.empty()==0)
{
s+=v.top();
v.pop();
}
--dist;
}
g<<s<<'\n';
return 0;
}