Pagini recente » Cod sursa (job #1942317) | Cod sursa (job #16524) | Cod sursa (job #1849027) | Cod sursa (job #2227426) | Cod sursa (job #1248223)
#include <fstream>
#include <algorithm>
#include <queue>
using namespace std;
#define NMax 100005
ifstream f("lupu.in");
ofstream g("lupu.out");
int n,x,l,sol;
priority_queue<int> cd;
struct oaie{int d,c;};
oaie v[NMax];
bool Compare(oaie i,oaie j) {return i.d>j.d;}
int main()
{
int i,a,b;
f>>n>>x>>l;
for(i=1;i<=n;++i)
{
f>>b>>a;
if(b>x) continue;
v[i].c=a;
v[i].d=(x-b)/l+1;
}
sort(v+1,v+n+1,Compare);
for(i=1;i<=n;++i)
{
if(v[i].d!=v[i-1].d && !cd.empty()) {sol+=cd.top();cd.pop();}
cd.push(v[i].c);
}
sol+=cd.top();
g<<sol<<"\n";
f.close();
g.close();
return 0;
}