B. Regular Bracket Sequence

https://codeforces.com/contest/26/problem/B

给定一个包含括号的字符串,问最少移除多少字符可以让字符串合法

两个点,第一是如果当前)超标了,那这个必须删除。第二是遍历完所有字符后,如果(是多的,要算到总数里面。

inline void solve(){
	string s;
	cin >> s;

	int cnt = 0;
	int ans = 0;

	for (const auto& x : s) {
		cnt += (x == '(' ? 1 : -1);
		if (cnt < 0) {
			cnt = 0;
			ans ++;
		}
	}
	ans += cnt;
	cout << s.size() - ans << '\n';
}
posted @   _Yxc  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示