已知一个由n对括号组成的长度为2n的括号序列(任何一个左括号都从内到外与右边距离最近的一个右括号相匹配),但是一次不小心这个括号序列被删除了,linux只记得序列中所有左括号的相对顺序和每一对括号中左括号和右括号的距离范围为[Li,Ri](1<=Li<=Ri<2n),现在他想恢复出原来正确的括号序列。
第一行输入整数 n(1<=n<=100000),表示在正确的括号序列中有n个左括号。
接下来输入n行数,每行两个数Li和Ri(1<=Li<=Ri<2n),分别描述第i个左括号和与其匹配的右括号的距离范围的左边界和右边界(即第i个左括号与对应的右括号的距离最近为左边界,最远为右边界)。输入每一行的描述的顺序和正确序列中左括号出现的顺序一致(从左到右)。
如果可以恢复出原来的括号序列,请输出改序列,(如果存在多种可行方案,则输出第一个右括号更靠前的方案,若有两种方案第一个右括号位置相同,则输出第二个右括号位置靠前的。若相同则依次类推,最终选出最优的方案)
如果无法恢复,请输出IMPOSSIBLE。
4 1 1 1 1 1 1 1 1 3 5 5 3 3 2 2 3 2 3 1 4 1 4
()()()() IMPOSSIBLE (())()