#include<bits/stdc++.h>
using namespace std;
#define ll long long
typedef pair<int,int> P;
const int maxn=1e5+10;
int a[maxn];
int n;
int Left[maxn],Right[maxn];
void solve(){
// memset(Left,0,sizeof Left);
// memset(Right,0,sizeof Right);
scanf("%d",&n);
for(int i=0;i<n;++i){
scanf("%d",&a[i]);
}
// int l=0,r;
// while(l<n){
// for(r=l+1;r<n;++r){
// if(a[r]>=a[l]&&a[r]%a[l]==0){
// Right[l]++;
// }else{
// l=r;
// break;
// }
// }
// if(r==n){
// break;
// }
// }
// r=n-1;
// while(r>=0){
// for(l=r-1;l>=0;--l){
// if(a[l]>=a[r]&&a[l]%a[r]==0){
// Left[r]++;
// }else{
// r=l;
// break;
// }
// }
// if(l==-1){
// break;
// }
// }
int ans=1;
for(int i=0;i<n;++i){
// cout<<Left[i]<<" "<<Right[i]<<endl;
int cnt=1;
int l,r;
for(r=i+1;r<n;++r){
if(a[r]>=a[i]&&a[r]%a[i]==0){
cnt++;
}else break;
}
for(l=i-1;l>=0;--l){
if(a[l]>=a[i]&&a[l]%a[i]==0){
cnt++;
}else break;
}
// cout<<l<<" "<<r<<endl;
i=r-1;
ans=max(ans,cnt);
}
printf("%d\n",ans);
}
int main(){
int T=1;
// scanf("%d",&T);
while(T--){
solve();
}
return 0;
}