#Z0910701. 正则括号序列
正则括号序列
题目描述
我们给出“正则括号”序列的以下归纳定义:
- 空序列是一个普通的括号序列。
- 如果s是正则括号序列,则(s)和[s]是正则括号序列。
- 如果a和b是正则括号序列,则ab是正则括号序列。
- 没有其他序列是正则括号序列
例如,以下所有字符序列都是正则括号序列:
(), [], (()), ()[], ()[()]
而以下字符序列则不是:
(,],)(, ([)], ([[]]
给定一个字符括号序列,您的目标是找到s的子序列中最长的正则括号序列的长度。也就是说,您希望找到最大的m,使得对于索引,其中, 是一个正则括号序列。
例如给定初始序列[([]])],最长的正则括号子序列为[([])],其长度是6。
输入格式
输入测试文件将包含多个测试用例。每个输入测试用例由单行组成,仅包含字符(,),[和];每个输入测试的长度在1到100之间。文件结束由包含单词“end”的一行标记,不应进行处理。
输出格式
对于每个输入情况,程序应该在一行上打印出最长的正则括号子序列的长度。
((()))
()()()
([]])
)[)(
([][]()
end
6
6
4
0
6
源poj2955
相关
在以下作业中: