Cod sursa(job #60695)

Utilizator swift90Ionut Bogdanescu swift90 Data 15 mai 2007 23:28:07
Problema Lupul Urias si Rau Scor 16
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<stdio.h>
#include<stdlib.h>
struct oi{
	int d,a;
};
int comp(const void*p,const void*q){
	oi *pp=(oi*)p,*qq=(oi*)q;
	oi px=*pp, py=*qq;
	if(px.d<py.d)
		return 1;
	if(px.d>py.d)
		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;
	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);
	
	qsort(nr,n,sizeof(nr[0]),comp);
	
	for(i=0;nr[i].d>x;i++)
		;
	
	s=0;
	while(i<n){
		max=0;
		while((nr[i].d>(x-l))&&(i<n)){
			if(nr[i].a>max)
				max=nr[i].a;
			i++;
			
		}
		x=x-l;
		s=s+max;
	}
	
	printf("%lld\n",s);
	
	return 0;
}