Pagini recente » Cod sursa (job #3130397) | Cod sursa (job #3313076) | Cod sursa (job #3305238) | Cod sursa (job #3333980) | Cod sursa (job #3324645)
#include <bits/stdc++.h>
using namespace std;
ifstream f("lupu.in");
ofstream g("lupu.out");
const int nmax=1e5+5;
int n,x,l;
vector <pair <int,int> > oi;
int main()
{
f >> n >> x >> l;
for (int i=1; i<=n; i++ )
{
int dist,lana; f >> dist >> lana;
if ( dist>x ) continue;
int deadline; deadline=(x-dist)/l;
oi.push_back({deadline,lana});
}
sort(oi.begin(),oi.end());
priority_queue <int, vector<int>, greater<int> > pq;
for (auto oaie:oi )
{
int deadline=oaie.first;
int lana=oaie.second;
pq.push(lana);
if ( pq.size()>deadline+1 )
pq.pop();
}
int sum=0;
while ( !pq.empty() )
{
sum+=pq.top();
pq.pop();
}
g << sum;
return 0;
}