用以下方式定义合法的括号字符串
1.空串是合法的
2. 如果S是合法的, 那么(S)和[S]也都是合法的
3. 如果A和B是合法的, 那么AB是一个合法的字符串.
举个栗子, 下列字符串都是合法的括号字符串:
(), [], (()), ([]), ()[], ()[()]
下面这些不是:
(, [, ), )(, ([)], ([(]
给出一个由字符'(', ')', '[', 和']'构成的字符串. 你的任务是找出一个最长的合法字符串的长度,使这个的字符串是给出的字符串的子序列。对于字符串a1 a2 ... an, b1 b2 ... bm 当且仅当对于1 = i1 < i2 < ... < in = m, 使得对于所有1 = j = n,aj = bij时, aj是bi的子序列