Cod sursa(job #1463041)

Utilizator bciobanuBogdan Ciobanu bciobanu Data 19 iulie 2015 19:02:59
Problema Medie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <stdio.h>

#define MAX_N 9000
#define MAX_V 7000

int v[MAX_N];
int cnt[MAX_V + 1];

int main(void) {
  FILE *f = fopen("medie.in", "r");
  int n;
  int total;

  fscanf(f, "%d", &n);
  for (int i = 0; i < n; i++) {
    fscanf(f, "%d", &v[i]);
    cnt[v[i]]++;
  }
  fclose(f);

  total = 0;

  for (int i = 0; i < n; i++) {
    for (int j = i + 1; j < n; j++) {
      int s = v[i] + v[j];
      if (!(s & 1)) {
        total += (cnt[s >> 1] - 2 * (v[i] == v[j]));
      }
    }
  }

  f = fopen("medie.out", "w");
  fprintf(f, "%d\n", total);
  fclose(f);
  return 0;
}