[普及/提高-]A104748.题解
2026-03-03 21:07:17
发布于:广东
25阅读
0回复
0点赞
思路
如果有配对不上的右括号,则其一定是需要删除的,但是如果有还没配对的左括号,可以先存下,遇到右括号则与其匹配,如果整个字符串都遍历结束了都还有 个未匹配的左括号,则还需要额外 次去删除这些多余的左括号。
AC code
#include<bits/stdc++.h>
using namespace std;
int n , cnt , ans;
string s;
signed main(){
cin >> n;
cin >> s;
s = " " + s;
for(int i = 1;i <= n;i ++){
if(s[i] == '('){
cnt ++;
}else{
if(cnt == 0){
ans ++;
}else{
cnt --;
}
}
}
cout << ans + cnt << endl;
return 0;
}
全部评论 3
不是怎么老是吞评论啊
17小时前 来自 广东
0你这个AC代码不对吧?
3天前 来自 浙江
0?
3天前 来自 浙江
0






有帮助,赞一个