Cod sursa(job #302188)

Utilizator loginLogin Iustin Anca login Data 8 aprilie 2009 18:51:21
Problema Medie Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
# include <stdio.h>
using namespace std;
int a[9003], n, m, b[7003];
long sol;
void citire ()
{
	int i;
	freopen ("medie.in", "r", stdin);
	scanf ("%d", &n);
	for (i=1;i<=n;i++)
		scanf ("%d", &a[i]), b[a[i]]++;
}
void medie ()
{
	int i, j, m;
	for (i=1;i<n;i++)
	   for (j=i+1;j<=n;j++)
	      if ((a[i]+a[j])%2==0)
	      {
		     m=(a[i]+a[j])/2;
			 if (b[m])
			 {	
			 	if (m==a[i] && b[m]>2)
			 		sol+=b[m]*(b[m]-1)/2*(b[m]-2), b[m]=1;
			 	else
			 		if (m!=a[i])
			 			sol+=b[m];
			}
		  }
}		 
int main ()
{
	citire ();
	freopen ("medie.out", "w", stdout);
	medie ();
	printf ("%ld", sol);
	return 0;
}