Cod sursa(job #321794)

Utilizator taloibogdanTaloi Bogdan Cristian taloibogdan Data 7 iunie 2009 12:52:40
Problema Medie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include<stdio.h>
long n,i,aa,f[7050],vm,j;
long long s;
int main()
{
 freopen("medie.in","r",stdin);
 freopen("medie.out","w",stdout);
 scanf("%ld",&n);
 for(i=1;i<=n;++i)
    {scanf("%ld",&aa);
     ++f[aa];
     if(vm<aa)vm=aa;}
 for(i=1;i<=vm;++i)
    for(j=i;j<=vm;++j)
       if(i!=j){if((i+j)%2==0)if(f[i]&&f[j]&&f[(i+j)>>1])s+=((long long)f[i]*f[j]*f[(i+j)>>1]);}
       else s+=(((long long)(f[i]-2)*(f[i]-1)*f[i])>>1);
 printf("%lld\n",s);
 return 0;
}