Pagini recente » Autentificare | Cod sursa (job #2893446) | Cod sursa (job #2895536) | Arhiva de probleme | Cod sursa (job #169469)
Cod sursa(job #169469)
#include<stdio.h>
#include<stdlib.h>
struct muie{
int t,a,b;
};
int comp(const void *a,const void *b){
int *aa=(int *)a,*bb=(int *)b;
int x=*aa, y=*bb;
return x-y;
}
int main () {
freopen("lupu.in","r",stdin);
freopen("lupu.out","w",stdout);
int n,x,l,i,act,max,s=0,j,p;
muie v[100000];
scanf("%d%d%d",&n,&x,&l);
for(i=0;i<n;++i){
scanf("%d%d",&v[i].a,&v[i].b);
v[i].t=(x-v[i].a)/l;
}
qsort(v,n,sizeof(v[0]),comp);
act=v[n-1].t;
for(i=n-1;i>=0&&v[i].t>=0;){
max=-1;
while(v[i].t==act)
--i;
act=v[i].t;
for(j=i+1;j<n;++j)
if(v[j].b>max){
max=v[j].b;
p=j;
}
v[p].b=0;
s+=max;
}
printf("%d\n",s);
return 0;
}