Pagini recente » Cod sursa (job #3312116) | Cod sursa (job #1588048) | Cod sursa (job #2032372) | Cod sursa (job #3341585) | Cod sursa (job #3324648)
#include <bits/stdc++.h>
#define int long long
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;
signed 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;
}