//思路 : 把 0 替换成 -1,求出前缀和,并记录下该前缀和的位置,在遇到相同的前缀和时更新最大长度即可
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <queue>
#include <set>
#include <map>
using namespace std;
#define maxn 100005
int main()
{
int n;
char s[maxn];
int a[maxn];
map<int,int>m;
while(cin>>n)
{
cin>>s;
for(int i=1;i<=n;i++)
{
if(s[i-1]=='0')
a[i]=-1;
else
a[i]=1;
}
for(int i=-n;i<=n;i++)
{
m[i]=0;
}
int ans=0;
int sum=0;
m[0]=1;
for(int i=1;i<=n;i++)
{
ans+=a[i];
if(m[ans])
sum=max(sum,i+1-m[ans]);
else
m[ans]=i+1;
}
cout << sum << endl;
}
return 0;
}