Pagini recente » Cod sursa (job #2634157) | Cod sursa (job #3181229) | Cod sursa (job #2332876) | Cod sursa (job #2264742) | Cod sursa (job #1302880)
#include<fstream>
#include<algorithm>
#include<queue>
using namespace std;
ifstream f("lupu.in");
ofstream g("lupu.out");
int n,x,l,i,d;
priority_queue<int>q;
struct oaie {int t,l;}v[100001];
bool cmp(oaie a,oaie b){return (a.t>b.t);}
int main(){
f>>n>>x>>l;
for (i=1;i<=n;++i){
f>>d>>v[i].l;
if (d<=x) v[i].t=(x-d)/l+1;
}
sort(v+1,v+n+1,cmp);
i=1;
long long sum=0,k;
for (k=v[i].t;k>0;--k){
while (i<=n && v[i].t==k) {q.push(v[i].l);++i;}
if (!q.empty()) {sum+=q.top();q.pop();}
}
g<<sum<<"\n";
return 0;
}