Pagini recente » Cod sursa (job #328843) | Cod sursa (job #162820) | Cod sursa (job #2632337) | Cod sursa (job #1963470) | Cod sursa (job #981292)
Cod sursa(job #981292)
#include <fstream>
#include <queue>
using namespace std;
ifstream f("lupu.in");
ofstream g("lupu.out");
int n,X,L,t,maxim=0;
long long sol;
priority_queue<pair<int,int>,vector<pair<int,int> > > h;
int main(void){
register int i,j,d,a;
pair<int,int> p;
f>>n>>X>>L;
for(i=1;i<=n;i++){
f>>d>>a;
if(d>X)
continue;
h.push(make_pair(a,(X-d)/L+1));
maxim=((X-d)/L+1>maxim?(X-d)/L+1:maxim);
}
for(t=1;t<=maxim;t++){
p=h.top();
while(p.second<t){
h.pop();
p=h.top();
}
sol+=p.first;
h.pop();
}
g<<sol;
return 0;
}