Cod sursa(job #319272)

Utilizator cosmin79Carabet Cosmin Andrei cosmin79 Data 31 mai 2009 00:37:24
Problema Orase Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <stdio.h>
#include <stdlib.h>
#define N 50005
#define inf 100000000
struct oras
{
	int a,b;
};
oras v[N];
int m,n,best;
void citire()
{
	scanf("%d%d",&m,&n);
	int i;
	for (i=1; i<=n; i++)
		scanf("%d%d",&v[i].a,&v[i].b);
}
int compar(const void *p,const void *q)
{
	oras x=*(oras*)p;
	oras y=*(oras*)q;
	if (x.a<y.a)
		return -1;
	if (x.a>y.a)
		return 1;
	return 0;
}
void rezolvare()
{
	int i,max;
	qsort(v+1,n,sizeof(v[0]),compar);
	for (i=1; i<=n; i++)
	{
		max=0;
		if (i>=2)
			if (v[i-1].b-v[i-1].a>max)
				max=v[i-1].b-v[i-1].a;
		best=v[i].b+v[i].a+max;
	}
	printf("%d\n",best);
}
int main()
{
	freopen("orase.in","r",stdin);
	freopen("orase.out","w",stdout);
	citire();
	rezolvare();
	return 0;
}