AC代码求问
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int n,l[N],r[N],a,b,ans=0;
int main(){
cin>>n;
for(int i=1;i<=n;i++) {
int x;
cin>>x;
if(x==1) a++;
else b++;
int t=a-b+n;//这啥意思
if(!l[t] && t!=n) l[t]=i;
else r[t]=i;
}
for(int i=0;i<=2*n;i++) ans=max(ans,r[i]-l[i]);
cout<<ans;
return 0;
}