Cod sursa(job #94341)

Utilizator znakeuJurba Andrei znakeu Data 22 octombrie 2007 18:27:25
Problema Orase Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <stdio.h>
#include <stdlib.h>

struct oras
{
	int d,l;	
};
oras v[50001];

int comp(const void *a, const void *b)
{
	oras *aa=(oras*) a, *bb=(oras*) b;
	oras x=*aa, y=*bb;
	if (x.d<y.d)
		return -1;
	if (x.d>y.d)
		return 1;
	return 0;
}

int main()
{
	int i,j,m,n,max=0;
	
	FILE *in  = fopen("orase.in","r");
	FILE *out = fopen("orase.out","w");
	
	fscanf(in,"%d%d",&m,&n);
	
	for (i=0; i<n; i++)
		fscanf(in,"%d%d",&v[i].d,&v[i].l);
	
	fclose(in);
	
	qsort(v,n,sizeof(v[0]),comp);
	
	for (i=1; i<n; i++)
		for (j=0; j<i; j++)
			if (v[i].l+v[j].l+v[i].d-v[j].d>max)
				max=v[i].l+v[j].l+v[i].d-v[j].d;
	
	fprintf(out,"%d\n",max);
	
	fclose(out);
	
	
	return 0;
}