Cod sursa(job #60813)

Utilizator swift90Ionut Bogdanescu swift90 Data 16 mai 2007 22:02:42
Problema Lupul Urias si Rau Scor 16
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<stdio.h>
#include<stdlib.h>
struct oi{
	int d,a,t;
};
int comp(const void*p,const void*q){
	oi *pp=(oi*)p,*qq=(oi*)q;
	oi px=*pp, py=*qq;
	if(px.t>py.t)
		return 1;
	if(px.t<py.t)
		return -1;
	return 0;
}
oi nr[11];
int main(){
	freopen("lupu.in","r",stdin);
	freopen("lupu.out","w",stdout);
	int n,x,l,i,max,t;
	long long s;
	scanf("%d %d %d",&n,&x,&l);
	for(i=0;i<n;i++){
		scanf("%d %d",&nr[i].d,&nr[i].a);
		nr[i].t=(x-nr[i].d)/l;
	}
	
	qsort(nr,n,sizeof(nr[0]),comp);
	
	for(i=0;nr[i].t<0;i++)
		;
	
	s=0;
	t=0;
	while(i<n){
		max=0;
		while(nr[i].t==t){
			if(nr[i].a>max)
				max=nr[i].a;
			i++;
		}
		s=s+max;
		t++;
	}
	
	printf("%lld\n",s);
	
	return 0;
}