奶牛 Bessie 想在新笔记本电脑上输入一个平衡括号字符串,但蹄子太大,让她笨手笨脚,不断输错字符。求至少需要翻转多少个字符(把左括号改成右括号,或反之)才能使字符串平衡。
平衡括号字符串有几种定义。最简单的一种是:左括号与右括号的总数相等,且任意前缀中左括号数都不少于右括号数。例如,下列字符串都平衡:
() (()) ()(()())
下列字符串则不平衡:
)( ())( ((())))
输入格式
- 第 1 行:一个括号字符串 $A$,长度为偶数且至多 100,000 个字符。
输出格式
- 第 1 行:一个整数,表示使字符串平衡所需翻转的括号数的最小值。
样例
输入格式 1
())(
输出格式 1
2
说明
最后一个括号必须翻转,中间两个右括号中也必须翻转一个。
题目作者:Brian Dean,2012