Cod sursa(job #258071)

Utilizator mika17Mihai Alex Ionescu mika17 Data 14 februarie 2009 16:56:43
Problema Medie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define abs(x) ( (x) < 0 ? -(x) : (x) )

const int VMAX = 7001;
int N,h[VMAX];

int main() {

        freopen("medie.in","r",stdin);
        freopen("medie.out","w",stdout);

        scanf("%d",&N);

        for(int x,i=0;i<N;++i) {
                scanf("%d",&x);
                h[ x ] ++;
        }
        
        int res = 0;

        for(int i=1;i<VMAX;++i) {

         res += (h[i] * (h[i]-1))/2 * (h[i]-2);
        
         for(int j=i+1;j<VMAX;++j)
         
           if( (j - i) % 2 == 0 ) res += h[i] * h[j] * h[(i+j)/2];
        }

        printf("%d",res);
}