题目描述
PIPI给你一个合法的括号序列,希望跟你按左括号下标递增顺序给出每对括号在序列中的下标。(下标从1开始)
输入
多组数据
第一行包括一个只包含‘(‘,‘)‘的字符串,保证输入的括号匹配序列合法,长度不超过100000
输出
按左括号下标递增顺序给出每对括号在序列中的下标。
样例输入 Copy
(())()()
样例输出 Copy
1 4
2 3
5 6
7 8
提示
注意输出时的顺序哦~
目前想法是用数组储存,目的是找到一个个完整的括号组,即括号组里面左括号,右括号相等。对每个括号组进行处理。
首先遍历一组,记录有多少个左括号。给每个数组元素一个编号,是数组下标加一。再遍历数组,每找到一个右括号,就往前找一个左括号。
找到一对后,用一个二维数组记录左右括号的位置。为了避免左括号重复被找,每找到一对,就改变编号成一个特殊数字。
最后根据输出的需要,需要将数组里的左括号编号从小到大输出,需要查找,记录。
由于想的过程超出能力范围,bug奇出,不知道明天能不能实现。
原文:https://www.cnblogs.com/tzp-empty-hya/p/14166101.html