Cod sursa(job #2876618)

Utilizator YusyBossFares Yusuf YusyBoss Data 23 martie 2022 12:39:31
Problema Medie Scor 100
Compilator cpp-64 Status done
Runda masonii Marime 0.74 kb
#include <fstream>
#include <algorithm>
#define NMAX 9000
#define VALMAX 7000

using namespace std;

ifstream cin ("medie.in");
ofstream cout ("medie.out");

int v[NMAX + 1];
int f[VALMAX + 1];

int main() {
  int n, i, j;
  long long sol, cnt;
  cin >> n;

  for (i = 0; i < n; i++) {
    cin >> v[i];
    f[v[i]]++;
  }

  sort (v, v + n);

  sol = 0;
  for (i = 0; i < n; i++) {
    sol += f[v[i]] * (f[v[i]] - 1) * (f[v[i]] - 2) / 2;

    cnt = 0;
    for (j = 0; j < i; j++) {
      if (2 * v[i] - v[j] > v[i] && 2 * v[i] - v[j] <= VALMAX && f[2 * v[i] - v[j]] > 0)
        cnt += f[2 * v[i] - v[j]];
    }

    sol += cnt * f[v[i]];
    i = i + f[v[i]] - 1;
    f[v[i]] = 0;
  }

  cout << sol;
  return 0;
}