#include<bits/stdc++.h>
#define f1(i, n) for(ll i=1;i<=n;++i)
#define f0(i, n) for(ll i=0;i<n;++i)
#define ull unsigned long long
#define ll long long
#define rev(a) reverse(a.begin(),a.end())
#define all(x) x.begin(),x.end()
#define so(A, n) sort(A+1, A+n+1)
using namespace std;
const int maxn = 2e5 + 1;
ll A[maxn];
int main()
{
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
int n;
cin >> n;
map<ll, ll> mp;
map<pair<ll, ll>, bool> melody_mark;
f1(i, n) {
cin >> A[i];
mp[A[i]]++;
}
int cnt = 0;
for (int i = 1; i <= n; ++i) {
for (int j = i + 1; j <= n; ++j) {
if (!melody_mark[make_pair(min(A[i], A[j]), max(A[i], A[j]))]) cnt += mp[A[i] + A[j]];
melody_mark[make_pair(min(A[i], A[j]), max(A[i], A[j]))] = true;
}
}
cout << cnt;
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBmMShpLCBuKSBmb3IobGwgaT0xO2k8PW47KytpKQojZGVmaW5lIGYwKGksIG4pIGZvcihsbCBpPTA7aTxuOysraSkKI2RlZmluZSB1bGwgdW5zaWduZWQgbG9uZyBsb25nCiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgcmV2KGEpIHJldmVyc2UoYS5iZWdpbigpLGEuZW5kKCkpCiNkZWZpbmUgYWxsKHgpIHguYmVnaW4oKSx4LmVuZCgpCiNkZWZpbmUgc28oQSwgbikgc29ydChBKzEsIEErbisxKQp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjb25zdCBpbnQgbWF4biA9IDJlNSArIDE7CmxsIEFbbWF4bl07CmludCBtYWluKCkKewoJaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CglpbnQgbjsKCWNpbiA+PiBuOwoJbWFwPGxsLCBsbD4gbXA7CgltYXA8cGFpcjxsbCwgbGw+LCBib29sPiBtZWxvZHlfbWFyazsKCWYxKGksIG4pIHsKCQljaW4gPj4gQVtpXTsKCQltcFtBW2ldXSsrOwoJfQoJaW50IGNudCA9IDA7Cglmb3IgKGludCBpID0gMTsgaSA8PSBuOyArK2kpIHsKCQlmb3IgKGludCBqID0gaSArIDE7IGogPD0gbjsgKytqKSB7CgkJCWlmICghbWVsb2R5X21hcmtbbWFrZV9wYWlyKG1pbihBW2ldLCBBW2pdKSwgbWF4KEFbaV0sIEFbal0pKV0pIGNudCArPSBtcFtBW2ldICsgQVtqXV07CgkJCW1lbG9keV9tYXJrW21ha2VfcGFpcihtaW4oQVtpXSwgQVtqXSksIG1heChBW2ldLCBBW2pdKSldID0gdHJ1ZTsKCQl9Cgl9Cgljb3V0IDw8IGNudDsKCglyZXR1cm4gMDsKfQoK