Cod sursa(job #578892)

Utilizator crushackPopescu Silviu crushack Data 11 aprilie 2011 18:18:01
Problema Medie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <stdio.h>
#define NMax 9010 
#define VMax 7010

const char IN[]="medie.in",OUT[]="medie.out";

int N,L;
int a[NMax];
int b[VMax];

int solve()
{
	int ret=0,i,j,k;
	for (i=1;i<=L;++i)
	{
		ret+=b[i]*(b[i]-1)*(b[i]-2)/2;
		for (j=i+2;j<=L;j+=2)
			ret+=b[i]*b[j]*b[(i+j)/2];
	}
	return ret;
}

int main()
{
	int i;
	freopen(IN,"r",stdin);
	scanf("%d",&N);
	for (i=0;i<N;++i)
		scanf("%d",a+i),
		++b[a[i]],
		L=a[i]>L ? a[i] : L;
	fclose(stdin);
	
	freopen(OUT,"w",stdout);
	printf("%d\n",solve());
	fclose(stdout);
	
	return 0;
}