Pagini recente » Cod sursa (job #3171670) | Cod sursa (job #2602619) | Cod sursa (job #635381) | Borderou de evaluare (job #909968) | Cod sursa (job #2594609)
#include <fstream>
#include <queue>
using namespace std;
ifstream cin("lupu.in");
ofstream cout("lupu.out");
vector<int> timp[100005];
priority_queue<int> pq;
int main()
{
int n,x,l,maxx=0;
cin>>n>>x>>l;
for(int i=1;i<=n;++i)
{
int d,a;
cin>>d>>a;
timp[(x-d)/l+1].push_back(a);
maxx=max(maxx,(x-d)/l+1);
}
int lana=0;
for(int i=maxx;i>=1;--i)
{
for(int j=0;j<timp[i].size();++j)
pq.push(timp[i][j]);
if(pq.empty()) continue;
lana+=pq.top();
pq.pop();
}
cout<<lana;
return 0;
}