CF223A.Bracket Sequence
普及+/提高
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
A bracket sequence is a string, containing only characters "(", ")", "[" and "]".
A correct bracket sequence is a bracket sequence that can be transformed into a correct arithmetic expression by inserting characters "1" and "+" between the original characters of the sequence. For example, bracket sequences "()[]", "([])" are correct (the resulting expressions are: "(1)+[1]", "([1+1]+1)"), and "](" and "[" are not. The empty string is a correct bracket sequence by definition.
A substring s[l... r] (1 ≤ l ≤ r ≤ |s|) of string s = _s_1_s_2... s|s| (where |s| is the length of string s) is the string s__l__s__l + 1... s__r. The empty string is a substring of any string by definition.
You are given a bracket sequence, not necessarily correct. Find its substring which is a correct bracket sequence and contains as many opening square brackets «[» as possible.
括号序列是一个仅包含字符 (、)、[ 和 ] 的字符串。
正确的括号序列是指:通过在原序列的字符之间插入字符 1 和 +,能够将其转化为一个合法算术表达式的括号序列。例如,括号序列 ()[ 和 ([]) 是正确的(对应得到的表达式分别为 (1)+[1] 和 ([1+1]+1)),而 )( 和 [ 则不是。根据定义,空字符串是一个正确的括号序列。
字符串 $ s = s_1s_2\ldots s_{|s|} $(其中 $ |s| $ 表示字符串 $ s $ 的长度)的一个子串 $ s[l\ldots r] ( 1 \le l \le r \le |s| $)指的是字符串 $ s_ls_{l+1}\ldots s_r $。根据定义,空字符串是任意字符串的子串。
给你一个括号序列,它不一定是正确的。请找出它的某个子串,该子串是一个正确的括号序列,并且包含尽可能多的左方括号 [。
输入格式
The first and the only line contains the bracket sequence as a string, consisting only of characters "(", ")", "[" and "]". It is guaranteed that the string is non-empty and its length doesn't exceed 105 characters.
第一行且唯一一行包含一个括号序列字符串,该字符串仅由字符 "(", ")", "[" 和 "]" 组成。保证该字符串非空,且其长度不超过 105 个字符。
输出格式
In the first line print a single integer — the number of brackets «[» in the required bracket sequence. In the second line print the optimal sequence. If there are more than one optimal solutions print any of them.
第一行输出一个整数——所求括号序列中左方括号「[」的个数。
第二行输出最优序列。若存在多个最优解,输出任意一个即可。
输入输出样例
输入#1
([])
输出#1
1 ([])
输入#2
(((
输出#2
0
输入解题思路,AI测评打分。不知道怎么写?