hdu 3351

来源:互联网 发布:数据挖掘领域大牛 编辑:程序博客网 时间:2024/05/17 03:16

hdu 3351

题意:括号匹配,可以将括号反转,问少进行多少次操作。数据保证字符串长度为偶数。

思路:应该是贪心吧,如果是左括号,就计数加1, 如果是右括号而且计数大于0,就计数减1,否则将其反转,答案加1,计数加1,最后计算答案+计数/2,就是将多出的左括号反转。

AC代码:

#include <iostream>using namespace std;int main() {    int tcase = 1;    string s;    while(cin >> s) {        if(s[0] == '-') return 0;        int left = 0, ans = 0;        for(int i = 0; i < s.size(); i++) {            if(s[i] == '{') left++;            else {                if(left == 0) ans++, left++;                else left--;            }        }        cout << tcase++ << ". " << ans + left / 2 << endl;    }    return 0;}


0 0
原创粉丝点击