Cod sursa(job #302268)

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