题解
2024-09-27 05:57:51
发布于:上海
61阅读
0回复
0点赞
#include<iostream>
#include<string>
using namespace std;
int main(){
string s;
cin>>s;
int left=0,right=0,cnt=0;
for(int c=0;c<s.size();c++){
char i=s[c];
if(i=='(')left++;
if(i==')')right++;
if(right>left){cnt+=1,left+=1,right-=1;}//当右括号超过左括号数量时,把右括号变为左括号
}
cout<<cnt+(left-right)/2<<endl;//这里让它左括号多出来的都变成右括号,而每改一个左括号,左括号数量-1,右括号数量+1,使得总共差了2,所以要除以2
return 0;
}
这里空空如也
有帮助,赞一个