Cod sursa(job #302250)

Utilizator loginLogin Iustin Anca login Data 8 aprilie 2009 19:28:26
Problema Medie Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
# include <stdio.h>
using namespace std;
int a[9003], n, b[7003], bb[7003];
long 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] && !bb[m])
			 		sol+=(long)b[m]*(b[m]-1)*(b[m]-2)/2, bb[m]=1;
			 	else
			 		if (m!=a[i])
			 			sol+=b[m];
			}
		  }
}		 
int main ()
{
	citire ();
	freopen ("medie.out", "w", stdout);
	medie ();
	printf ("%lld", sol);
	return 0;
}