#include #include #include using namespace std; using namespace atcoder; using mint = modint998244353; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000005 #define Inf64 1000000000000000001LL int main(){ int n; cin>>n; vector a(n); rep(i,n)cin>>a[i]; long long ans = 0; for(long long i=2;i<=800;i++){ for(long long j=1;j=n)continue; if(ii>=jj)break; if((a[ii]+a[jj])%i==0&&(a[ii]+a[jj])/i>800){ ans++; } } } for(long long i=1;i<=800;i++){ vector t(n); rep(j,n){ t[j] = a[j] - (j+1) * i; } sort(t.begin(),t.end()); rep(j,n){ if(t[j] < 0)continue; int d = distance(t.begin(),lower_bound(t.begin(),t.end(),-t[j])); int r = distance(t.begin(),upper_bound(t.begin(),t.end(),-t[j])); r = min(r,j); ans += r - d; } } cout<