Cod sursa(job #1688716)

Utilizator badea_adi1999Badea Adrian Catalin badea_adi1999 Data 13 aprilie 2016 18:06:49
Problema Medie Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <cstdio>
#include <algorithm>
#define nmax 7005
using namespace std;
long long sol;
int n,val,a[nmax];
int v[nmax];

int main()
{
    int i,j;
    freopen("medie.in","r",stdin);
    freopen("medie.out","w",stdout);
    scanf("%d",&n);
    for (i=1;i<=n;i++) {
        scanf("%d",&v[i]);
        a[v[i]]++;
        val=max(val,v[i]);
    }
    for (i=0;i<=val;i++)
        if (a[i]>=3)
            sol+=1LL*a[i]*(a[i]-1)*(a[i]-2)/2;

    for (i=0;i<=val;i++)
        for (j=i+2;j<=val;j+=2)
            sol+=1LL*a[i]*a[j]*(a[(i+j)>>1]);

    printf("%lld",sol);

    return 0;
}