Cod sursa(job #1382951)
Utilizator | Data | 9 martie 2015 19:23:56 | |
---|---|---|---|
Problema | Medie | Scor | 100 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.58 kb |
#include <stdio.h>
#define MAXV 7000
int fr[MAXV+1];
int main(){
int n, i, x, j;
long long ans;
FILE *fin, *fout;
fin=fopen("medie.in", "r");
fout=fopen("medie.out", "w");
fscanf(fin, "%d", &n);
for(i=0; i<n; i++){
fscanf(fin, "%d", &x);
fr[x]++;
}
ans=0;
for(i=1; i<=MAXV; i++){
ans+=(1LL*fr[i]*(fr[i]-1)*(fr[i]-2))/2LL;
for(j=i+2; j<=MAXV; j+=2){
ans+=1LL*fr[i]*fr[j]*fr[(i+j)/2];
}
}
fprintf(fout, "%lld\n", ans);
fclose(fin);
fclose(fout);
return 0;
}