Cod sursa(job #71468)

Utilizator M@2Te4iMatei Misarca M@2Te4i Data 10 iulie 2007 17:29:56
Problema Medie Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<stdio.h>

long s;
int a[7001],b[7001],n,w[7001],c[7001];

void medie(int q)
{
int m;
for (int i=0; i<q; i++)
    if ((a[i]+a[q]) %2==0)
       {
       m=(a[i]+a[q])/2;// >> 1;
       if (a[i]!=m && a[q]!=m)
	  ++c[m];
       }
}

void citire()
{
freopen("medie.in","r",stdin);
scanf("%d", &n);
for (int i=0; i<n; i++)
    {
    scanf("%d", &a[i]);
    if (b[a[i]]==0)
       {
       b[a[i]]=1;
       w[++w[0]]=a[i];
       }
       else ++b[a[i]];
    medie(i);
    }
fclose(stdin);
}

void ceprintam()
{
for (int i=1; i<=w[0]; i++)
    s+=c[w[i]]*b[w[i]];
}

int main()
{
s=0;
citire();
freopen("medie.out","w",stdout);
ceprintam();
printf("%ld",s);
fclose(stdout);
return 0;
}