文章
40
粉丝
512
获赞
13
访问
371.8k
#include<bits/stdc++.h>
using namespace std;
int main(){
string str;
while(cin>>str){
map<int,int> m;
int n=str.size();
int dp[n];
dp[0]=0;
for(int i=1;i<=n;i++){
if(str[i-1]=='0'){
dp[i] = dp[i-1]-1;
}else{
dp[i] = dp[i-1]+1;
}
}
int ans=0;
int b=0;
for(int i=1;i<=n;i++){
b = m[dp[i]];
if(b==0&&dp[i]!=0){
m[dp[i]]=i;
}else{
if(i-b>ans){
ans = i - b;
}
}
}
cout<<ans<<endl;
}
}
登录后发布评论
你这代码21-24行太绝了,牛鼻