Cod sursa(job #2712960)
Utilizator | Data | 26 februarie 2021 22:14:42 | |
---|---|---|---|
Problema | Medie | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.6 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("medie.in");
ofstream fout("medie.out");
const int VMAX = 2e4;
int N, x, freq[VMAX], mx;
long long ans;
void max_self(int &a, int b) {
a = max(a, b);
}
int main() {
fin >> N;
for(int i = 0; i < N; ++i) {
fin >> x;
++freq[x];
max_self(mx, x);
}
for(int i = 1; i <= mx; ++i) {
ans += 1LL * (freq[i] - 2) * (freq[i] - 1) * freq[i] / 2LL;
for(int j = 1; j < i; ++j)
ans += 1LL * freq[i - j] * freq[i] * freq[i + j];
}
fout << ans << '\n';
}