#include <bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int a[N];
int b[N],g[N],s[N],k1[N],k2[N];
bool vis[N];
int main(){
int n;cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
if(a[i]==1) b[i]=1;
else g[i]=1;
}
int maxn=-1;
for(int i=1;i<=n;i++){
b[i]+=b[i-1];
g[i]+=g[i-1];
if(b[i]>g[i]) s[i]=b[i]-g[i];
else s[i]=g[i]-b[i];
maxn=max(maxn,s[i]);
if(!vis[s[i]]){
vis[s[i]]=1;
k1[s[i]]=i;
}
else k2[s[i]]=i;
}
bool fb=0,fg=0;
for(int i=1;i<=n;i++){
if(b[i]) fb=1;
if(g[i]) fg=1;
if(fb&&fg) break;
}
if((!fb)||(!fg)){
cout<<0<<endl;
return 0;
}
int ans=0;
for(int i=1;i<=maxn;i++){
ans=max(ans,k2[i]-k1[i]);
}
cout<<ans<<endl;
return 0;
}