#include<bits/stdc++.h>
using namespace std;
int tell;
bool binarySearch(int,vector<pair<int,int>>,int,int);
void makingnewvector(vector<int>,vector<pair<int,int>>&);
int main()
{
int i,j,k,n;
cin>>n;
int arr[n];
vector<int> lhs,rhs;
vector<pair<int,int>> nlhs,nrhs;
for(i=0;i<n;i++){
cin>>arr[i];
}
for(i=0; i<n; i++)
for(j=0; j<n; j++)
for(k=0; k<n; k++){
if(arr[i])
rhs.push_back(arr[i]*(arr[j]+arr[k]));
lhs.push_back((arr[i]*arr[j])+arr[k]);
}
sort(lhs.begin(),lhs.end());
sort(rhs.begin(),rhs.end());
makingnewvector(rhs,nrhs);
makingnewvector(lhs,nlhs);
int sum=0;
for(i=0;i<nlhs.size();i++){
if(binarySearch(nlhs[i].first,nrhs,0,nrhs.size()-1)){
sum+=nlhs[i].second*tell;
}
}
cout<<sum<<endl;
return 0;
}
void makingnewvector(vector<int> hs,vector<pair<int,int>> &nhs)
{
int temp=hs[0],flag=1;
for(int i=1;i<hs.size();i++){
if(temp==hs[i])
flag++;
else{
nhs.push_back(make_pair(temp,flag));
temp=hs[i];
flag=1;
}
}
nhs.push_back(make_pair(temp,flag));
}
bool binarySearch(int n,vector<pair<int,int>> rhs,int low,int high)
{
int mid=(low+high)/2;
if(n==rhs[mid].first){
tell=rhs[mid].second;
return true;
}
if(low==high)
return false;
if(n>rhs[mid].first)
return binarySearch(n,rhs,mid+1,high);
if(n<rhs[mid].first)
return binarySearch(n,rhs,low,mid);
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IHRlbGw7CmJvb2wgYmluYXJ5U2VhcmNoKGludCx2ZWN0b3I8cGFpcjxpbnQsaW50Pj4saW50LGludCk7CnZvaWQgbWFraW5nbmV3dmVjdG9yKHZlY3RvcjxpbnQ+LHZlY3RvcjxwYWlyPGludCxpbnQ+PiYpOwppbnQgbWFpbigpCnsKICAgIGludCBpLGosayxuOwogICAgY2luPj5uOwogICAgaW50IGFycltuXTsKICAgIHZlY3RvcjxpbnQ+IGxocyxyaHM7CiAgICB2ZWN0b3I8cGFpcjxpbnQsaW50Pj4gbmxocyxucmhzOwogICAgZm9yKGk9MDtpPG47aSsrKXsKICAgICAgICBjaW4+PmFycltpXTsKICAgIH0KCiAgICBmb3IoaT0wOyBpPG47IGkrKykKICAgICAgICBmb3Ioaj0wOyBqPG47IGorKykKICAgICAgICAgICAgZm9yKGs9MDsgazxuOyBrKyspewogICAgICAgICAgICAgICAgaWYoYXJyW2ldKQogICAgICAgICAgICAgICAgICAgIHJocy5wdXNoX2JhY2soYXJyW2ldKihhcnJbal0rYXJyW2tdKSk7CiAgICAgICAgICAgICAgICBsaHMucHVzaF9iYWNrKChhcnJbaV0qYXJyW2pdKSthcnJba10pOwogICAgICAgICAgICB9CgogICAgc29ydChsaHMuYmVnaW4oKSxsaHMuZW5kKCkpOwogICAgc29ydChyaHMuYmVnaW4oKSxyaHMuZW5kKCkpOwogICAgbWFraW5nbmV3dmVjdG9yKHJocyxucmhzKTsKICAgIG1ha2luZ25ld3ZlY3RvcihsaHMsbmxocyk7CiAgICBpbnQgc3VtPTA7CiAgICBmb3IoaT0wO2k8bmxocy5zaXplKCk7aSsrKXsKICAgICAgICBpZihiaW5hcnlTZWFyY2gobmxoc1tpXS5maXJzdCxucmhzLDAsbnJocy5zaXplKCktMSkpewogICAgICAgICAgICBzdW0rPW5saHNbaV0uc2Vjb25kKnRlbGw7CiAgICAgICAgfQogICAgfQogICAgY291dDw8c3VtPDxlbmRsOwogICAgcmV0dXJuIDA7Cn0Kdm9pZCBtYWtpbmduZXd2ZWN0b3IodmVjdG9yPGludD4gaHMsdmVjdG9yPHBhaXI8aW50LGludD4+ICZuaHMpCnsKICAgIGludCB0ZW1wPWhzWzBdLGZsYWc9MTsKICAgIGZvcihpbnQgaT0xO2k8aHMuc2l6ZSgpO2krKyl7CiAgICAgICAgaWYodGVtcD09aHNbaV0pCiAgICAgICAgICAgIGZsYWcrKzsKICAgICAgICBlbHNlewogICAgICAgICAgICBuaHMucHVzaF9iYWNrKG1ha2VfcGFpcih0ZW1wLGZsYWcpKTsKICAgICAgICAgICAgdGVtcD1oc1tpXTsKICAgICAgICAgICAgZmxhZz0xOwogICAgICAgIH0KICAgIH0KICAgIG5ocy5wdXNoX2JhY2sobWFrZV9wYWlyKHRlbXAsZmxhZykpOwp9CmJvb2wgYmluYXJ5U2VhcmNoKGludCBuLHZlY3RvcjxwYWlyPGludCxpbnQ+PiByaHMsaW50IGxvdyxpbnQgaGlnaCkKewogICAgaW50IG1pZD0obG93K2hpZ2gpLzI7CiAgICBpZihuPT1yaHNbbWlkXS5maXJzdCl7CiAgICAgICAgdGVsbD1yaHNbbWlkXS5zZWNvbmQ7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9CiAgICBpZihsb3c9PWhpZ2gpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgaWYobj5yaHNbbWlkXS5maXJzdCkKICAgICAgICByZXR1cm4gYmluYXJ5U2VhcmNoKG4scmhzLG1pZCsxLGhpZ2gpOwogICAgaWYobjxyaHNbbWlkXS5maXJzdCkKICAgICAgICByZXR1cm4gYmluYXJ5U2VhcmNoKG4scmhzLGxvdyxtaWQpOwp9Cg==