Cod sursa(job #59853)

Utilizator devilkindSavin Tiberiu devilkind Data 10 mai 2007 19:34:02
Problema Medie Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <stdio.h>
#define NMAX 16001

FILE *f = fopen("medie.in","rt"), *g = fopen("medie.out","wt");

long long v[NMAX],i,j,k,n,sol,max,m,x;

void citire()
{
fscanf(f,"%lld",&n);
for (i=1;i<=n;i++)
    {fscanf(f,"%lld",&k);
    v[k]++;
    if (k>max) max=k;
    }
}

void solve()
{

for (i=1;i<=max;i++)
    for (j=i;j<=max;j++)
	if (i==j) sol+=v[i]*(v[i]-1)*(v[i]-2);
	else {
	     x=i+j;
	     if (x%2==0) {x/=2;
			 sol+=(v[i]*v[j]*v[x])*2;}
	     }
sol/=2;
fprintf(g,"%lld",sol);
}

int main()
{
citire();   
solve();
fclose(f);
fclose(g);
return 0;
}