好哥哥
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

给定一段合法括号序列和元钱,合法括号序列的定义如下:

1. 是合法的括号序列。

2.若字符串是合法的括号序列,那么也是合法的括号序列。

3.若字符串,是合法的括号序列,那么也是合法的括号序列。

我们设定表示第对括号的层数,即:它前面有多少未匹配的左括号。同时规定一对括号是另一对括号的好哥哥,当且仅当且括号在括号内。

如果当前位于一对括号,每次可以花费元跳到:

1. 它的任意一个好哥哥。

2. 一对括号,要求的好哥哥是

假如一开始位于第一对括号,请问最多可以经过多少对不重复的括号?

输入描述:

第一行两个正整数,表示括号对数,表示钱的数量,其中,

接下来一行输入长度为的括号序列。

输出描述:

输出最多可以经过多少对不重复的括号。

示例1

输入

复制
5 2
((((()))))

输出

复制
3
示例2

输入

复制
9 5
((()(()()))(()()))

输出

复制
5