Pagini recente » Cod sursa (job #3246957) | Cod sursa (job #143036) | Cod sursa (job #1173009) | Cod sursa (job #104438) | Cod sursa (job #1282173)
#include<fstream>
#include<algorithm>
#include<queue>
#define MAXN 100005
#define LL long long
using namespace std;
ifstream cin("lupu.in");
ofstream cout("lupu.out");
int N,X,L;
LL S;
struct oaie{
int dist;
int profit;
int timp;
} V[MAXN];
priority_queue<int> Q;
bool cmp(oaie a,oaie b)
{
return (a.timp>b.timp);
}
int main() {
cin>>N>>X>>L;
for(int i=0;i<N;i++){
cin>>V[i].dist;
cin>>V[i].profit;
V[i].timp=(X-V[i].dist)/L;
}
sort(V,V+N,cmp);
int Tmax=V[0].timp;
//solve
int i,j;
for(int j=Tmax;j>=0;j--) {
for(int i=0;i<N;i++)
if(j==V[i].timp)
Q.push(V[i].profit);
S=S+Q.top();
Q.pop();
}
cout<<S;
return 0;
}