Cod sursa(job #73824)

Utilizator c_sebiSebastian Crisan c_sebi Data 21 iulie 2007 12:16:15
Problema Medie Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <stdio.h>
#include <stdlib.h>


int v[7001];



int main()
{
	int a[9001];
	char s[5];
	long long rez=0;
	int aux, i, j;
	FILE *f, *g;
	f=fopen("medie.in", "r");
	g=fopen("medie.out", "w");
	int n;
	fscanf (f, "%d\n", &n);
	for (i=0; i<n; ++i)
		{fscanf(f, "%s\n", &s);
		a[i] = atoi(s);
		++v[a[i]];  }
	fclose(f);
#define div2(x) ( ! ((x) & 1) )
	for (i=0; i<n-1; ++i)
		for (j=i+1; j<n; ++j)
			if (div2( aux=a[i]+a[j] ) )
				rez+=v[aux>>1]-2*(a[i]==a[j]);
	fprintf(g, "%lld\n", rez);
	fclose(g);
	return 0;
}