#XMOJ10668. 前缀的括号序列
前缀的括号序列
说明
时间限制:1 Sec
内存限制:256 MB
输入文件:parentheses.in 输出文件:parentheses.out
“合法的括号序列”定义如下:
-
空字符串是合法的括号序列。
-
若字符串 是合法的括号序列,则字符串 也是合法的括号序列。
-
若字符串 和 均为合法的括号序列,则字符串 也是合法的括号序列。
例如,、、、、 等均为合法的括号序列。
现给定一个由 和 组成、长度为 的字符串 。对于 ,将 中从第 个字符到第 个字符的连续子串记为。
取 这些子串,按任意顺序拼接得到字符串 。定义 为“ 的子序列中,属于正确括号序列的字符串的最大长度”。这里“子序列”是指从 中删除部分字符后,剩余字符保持原有顺序拼接而成的字符串。
请找出 的最大值。
输入格式
第一行一个整数 。
第二行一个由 和 组成、长度为 的字符串 。
输出格式
一个整数,表示 的最大值。
样例
样例 1
3
)((
4
样例说明:各子串定义如下:、、。
-
若按 的顺序拼接,得到的字符串 。在 的所有子序列中,属于正确括号序列的字符串最大长度为 ,因此 。
-
若按 的顺序拼接,得到的字符串 。在 的所有子序列中,属于正确括号序列的字符串最大长度为 ,因此 。
不存在能使 的 ,因此 的最大值为 。
样例 2
3
)))
0
样例 3
10
(((()))()(
34
数据范围
对于 8% 的数据,;
对于 100% 的数据,。
相关
在下列比赛中: