#include <bits/stdc++.h>
using namespace std;
#define FOR(i, a, b) for(int i = (a); i <= (b); ++i)
#define FORD(i, a, b) for(int i = (a); i >= (b); --i)
#define sz(a) (int)(a).size()
#define all(a) (a).begin(), (a).end()
#define bit(s, i) (((s) >> (i)) & 1)
#define ii pair <int, int>
#define fi first
#define se second
#define ll long long
#define eb emplace_back
#define pb push_back
#define __builtin_popcount __builtin_popcountll
template <class X, class Y>
bool maxi(X &x, Y y) {
if(x < y) {
x = y;
return true;
}
return false;
}
template <class X, class Y>
bool mini(X &x, Y y) {
if(x > y) {
x = y;
return true;
}
return false;
}
void solve();
int32_t main() {
#define task "test"
if(fopen(task".inp", "r")){
freopen(task".inp", "r", stdin);
freopen(task".out", "w", stdout);
}
cin.tie(0)->sync_with_stdio(0);
int tc = 1; //cin >> tc;
FOR(i, 1, tc){
solve();
}
}
const int N=3e5+5;
const int LG=18;
int n,a[N],l[N],r[N],mx[N][LG+1];
int get(int L, int R){
int lg=__lg(R-L+1);
return max(mx[L][lg],mx[R-(1<<lg)+1][lg]);
}
ll calc(int L, int M, int R, int vL, int vR){
auto findL = [&](int val, int t)->int{
int lb=L, rb=M, res=M+1;
while(lb<=rb){
int mb=(lb+rb)>>1;
if(get(mb,M)<=val-t){
res=mb;
rb=mb-1;
}
else{
lb=mb+1;
}
}
return res;
};
auto findR = [&](int val, int t)->int{
int lb=M, rb=R, res=M-1;
while(lb<=rb){
int mb=(lb+rb)>>1;
if(get(M,mb)<=val-t){
res=mb;
lb=mb+1;
}
else{
rb=mb-1;
}
}
return res;
};
int l1=findL(vR,0), l2=findL(vL,1)-1, r1=findR(vL,1)+1, r2=findR(vR,0);
// cout<<l1<<" "<<l2<<" "<<r1<<" "<<r2<<'\n';
return 1LL*(l2-l1+1)*(r2-M+1) + 1LL*(M-l2)*(r2-r1+1);
}
void solve() {
cin>>n;
FOR(i,1,n) cin>>a[i];
FOR(i,1,n){
l[i]=i-1;
while(l[i]>0&&a[l[i]]>a[i]) l[i]=l[l[i]];
}
FORD(i,n,1){
r[i]=i+1;
while(r[i]<=n&&a[r[i]]>a[i]) r[i]=r[r[i]];
}
FOR(i,1,n) mx[i][0]=a[i];
for(int i=1; 1<<i <=n; ++i){
for(int j=1; j+(1<<i)-1 <= n; ++j){
mx[j][i]=max(mx[j][i-1],mx[j+(1<<(i-1))][i-1]);
}
}
ll res=0;
FOR(i,1,n){
for(int d=1; d*a[i]<N; ++d){
ll tmp=calc(l[i]+1,i,r[i]-1,a[i]*d,a[i]*(d+1)-1);
// cout<<a[i]<<" "<<d<<" "<<tmp<<'\n';
res=res+tmp*d;
}
}
cout<<res<<'\n';
// int tmp=calc(1,3,5,5,5);
// cout<<tmp<<'\n';
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIEZPUihpLCBhLCBiKSBmb3IoaW50IGkgPSAoYSk7IGkgPD0gKGIpOyArK2kpCiNkZWZpbmUgRk9SRChpLCBhLCBiKSBmb3IoaW50IGkgPSAoYSk7IGkgPj0gKGIpOyAtLWkpCiNkZWZpbmUgc3ooYSkgKGludCkoYSkuc2l6ZSgpCiNkZWZpbmUgYWxsKGEpIChhKS5iZWdpbigpLCAoYSkuZW5kKCkKI2RlZmluZSBiaXQocywgaSkgKCgocykgPj4gKGkpKSAmIDEpCiNkZWZpbmUgaWkgcGFpciA8aW50LCBpbnQ+CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSBlYiBlbXBsYWNlX2JhY2sKI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBfX2J1aWx0aW5fcG9wY291bnQgX19idWlsdGluX3BvcGNvdW50bGwKCnRlbXBsYXRlIDxjbGFzcyBYLCBjbGFzcyBZPgogICAgYm9vbCBtYXhpKFggJngsIFkgeSkgewogICAgICAgIGlmKHggPCB5KSB7CiAgICAgICAgICAgIHggPSB5OwogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKdGVtcGxhdGUgPGNsYXNzIFgsIGNsYXNzIFk+CiAgICBib29sIG1pbmkoWCAmeCwgWSB5KSB7CiAgICAgICAgaWYoeCA+IHkpIHsKICAgICAgICAgICAgeCA9IHk7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9Cgp2b2lkIHNvbHZlKCk7CmludDMyX3QgbWFpbigpIHsKICAgICNkZWZpbmUgdGFzayAidGVzdCIKICAgIGlmKGZvcGVuKHRhc2siLmlucCIsICJyIikpewogICAgICAgIGZyZW9wZW4odGFzayIuaW5wIiwgInIiLCBzdGRpbik7CiAgICAgICAgZnJlb3Blbih0YXNrIi5vdXQiLCAidyIsIHN0ZG91dCk7CiAgICB9CiAgICBjaW4udGllKDApLT5zeW5jX3dpdGhfc3RkaW8oMCk7CgogICAgaW50IHRjID0gMTsgLy9jaW4gPj4gdGM7CiAgICBGT1IoaSwgMSwgdGMpewogICAgICAgIHNvbHZlKCk7CiAgICB9Cn0KCmNvbnN0IGludCBOPTNlNSs1Owpjb25zdCBpbnQgTEc9MTg7CgppbnQgbixhW05dLGxbTl0scltOXSxteFtOXVtMRysxXTsKCmludCBnZXQoaW50IEwsIGludCBSKXsKICAgIGludCBsZz1fX2xnKFItTCsxKTsKICAgIHJldHVybiBtYXgobXhbTF1bbGddLG14W1ItKDE8PGxnKSsxXVtsZ10pOwp9CgpsbCBjYWxjKGludCBMLCBpbnQgTSwgaW50IFIsIGludCB2TCwgaW50IHZSKXsKICAgIGF1dG8gZmluZEwgPSBbJl0oaW50IHZhbCwgaW50IHQpLT5pbnR7CiAgICAgICAgaW50IGxiPUwsIHJiPU0sIHJlcz1NKzE7CiAgICAgICAgd2hpbGUobGI8PXJiKXsKICAgICAgICAgICAgaW50IG1iPShsYityYik+PjE7CiAgICAgICAgICAgIGlmKGdldChtYixNKTw9dmFsLXQpewogICAgICAgICAgICAgICAgcmVzPW1iOwogICAgICAgICAgICAgICAgcmI9bWItMTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlewogICAgICAgICAgICAgICAgbGI9bWIrMTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzOwogICAgfTsKICAgIGF1dG8gZmluZFIgPSBbJl0oaW50IHZhbCwgaW50IHQpLT5pbnR7CiAgICAgICAgaW50IGxiPU0sIHJiPVIsIHJlcz1NLTE7CiAgICAgICAgd2hpbGUobGI8PXJiKXsKICAgICAgICAgICAgaW50IG1iPShsYityYik+PjE7CiAgICAgICAgICAgIGlmKGdldChNLG1iKTw9dmFsLXQpewogICAgICAgICAgICAgICAgcmVzPW1iOwogICAgICAgICAgICAgICAgbGI9bWIrMTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlewogICAgICAgICAgICAgICAgcmI9bWItMTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzOwogICAgfTsKCiAgICBpbnQgbDE9ZmluZEwodlIsMCksIGwyPWZpbmRMKHZMLDEpLTEsIHIxPWZpbmRSKHZMLDEpKzEsIHIyPWZpbmRSKHZSLDApOwovLyAgICBjb3V0PDxsMTw8IiAiPDxsMjw8IiAiPDxyMTw8IiAiPDxyMjw8J1xuJzsKICAgIHJldHVybiAxTEwqKGwyLWwxKzEpKihyMi1NKzEpICsgMUxMKihNLWwyKSoocjItcjErMSk7Cn0KCnZvaWQgc29sdmUoKSB7CiAgICBjaW4+Pm47CiAgICBGT1IoaSwxLG4pIGNpbj4+YVtpXTsKICAgIEZPUihpLDEsbil7CiAgICAgICAgbFtpXT1pLTE7CiAgICAgICAgd2hpbGUobFtpXT4wJiZhW2xbaV1dPmFbaV0pIGxbaV09bFtsW2ldXTsKICAgIH0KICAgIEZPUkQoaSxuLDEpewogICAgICAgIHJbaV09aSsxOwogICAgICAgIHdoaWxlKHJbaV08PW4mJmFbcltpXV0+YVtpXSkgcltpXT1yW3JbaV1dOwogICAgfQoKICAgIEZPUihpLDEsbikgbXhbaV1bMF09YVtpXTsKICAgIGZvcihpbnQgaT0xOyAxPDxpIDw9bjsgKytpKXsKICAgICAgICBmb3IoaW50IGo9MTsgaisoMTw8aSktMSA8PSBuOyArK2opewogICAgICAgICAgICBteFtqXVtpXT1tYXgobXhbal1baS0xXSxteFtqKygxPDwoaS0xKSldW2ktMV0pOwogICAgICAgIH0KICAgIH0KCiAgICBsbCByZXM9MDsKICAgIEZPUihpLDEsbil7CiAgICAgICAgZm9yKGludCBkPTE7IGQqYVtpXTxOOyArK2QpewogICAgICAgICAgICBsbCB0bXA9Y2FsYyhsW2ldKzEsaSxyW2ldLTEsYVtpXSpkLGFbaV0qKGQrMSktMSk7Ci8vICAgICAgICAgICAgY291dDw8YVtpXTw8IiAiPDxkPDwiICI8PHRtcDw8J1xuJzsKICAgICAgICAgICAgcmVzPXJlcyt0bXAqZDsKICAgICAgICB9CiAgICB9CiAgICBjb3V0PDxyZXM8PCdcbic7Ci8vICAgIGludCB0bXA9Y2FsYygxLDMsNSw1LDUpOwovLyAgICBjb3V0PDx0bXA8PCdcbic7Cn0K