#P5523. Clumsy Cows

Clumsy Cows

题目描述

母牛贝西正试图在她的新笔记本电脑中输入一串平衡的括号,但她非常笨拙(由于她的大蹄子),以至于她经常打错字符。请帮助她计算字符串中必须反转的最小字符数(例如,将左括号更改为右括号,反之亦然) ,以使字符串变得平衡。

有几种方法可以定义一串括号"平衡"的含义。也许最简单的定义是 ({(}'s{s }){)}'s{s }的总数必须相同,并且对于字符串的任何前缀,({(}'s{s }){)}'s{s }的数量必须至少一样多。例如,以下字符串都是平衡的:

()(())()(()()){() (()) ()(()())}

虽然这些不是:

)(())(((()))){)( ())( ((())))}

给出一个偶数长度的括号序列,问最少修改多少个括号可以使其平衡。

输入格式

1{1 }行:一串偶数长度的括号,最多 100,000{100,000 }个字符。

输出格式

1{1 }行:一个整数,给出必须切换以将字符串转换为平衡字符串的最小括号数。

样例

输入样例

())(

输出样例

2

提示

最后一个括号必须切换,两个中间右括号之一也必须切换。