减法运算不满足结合律,例如 $(5 - 2) - 1 = 2$,而 $5 - (2 - 1) = 4$,因此 $5 - 2 - 1$ 的值取决于减法的执行顺序。在没有括号的情况下,约定从左向右执行运算,即 $5 - 2 - 1$ 表示 $(5 - 2) - 1$。
给定一个形如 $$x_1 \pm x_2 \pm \dots \pm x_n$$ 的表达式,其中 $\pm$ 表示 $+$(加号)或 $-$(减号),$x_1, x_2, \dots, x_n$ 表示互不相同的变量。我们希望在形如 $$x_1 - x_2 - \dots - x_n$$ 的表达式中添加括号,使其与原表达式等价。
例如,若要得到与 $$x_1 - x_2 - x_3 + x_4 + x_5 - x_6 + x_7$$ 等价的表达式,我们可以在 $$x_1 - x_2 - x_3 - x_4 - x_5 - x_6 - x_7$$ 中添加括号,例如: $$((x_1 - x_2) - (x_3 - x_4 - x_5)) - (x_6 - x_7)$$
注意:括号内不包含任何变量或仅包含一个变量的括号形式是不允许的。
编写一个程序,完成以下任务: 读取给定表达式 $x_1 \pm x_2 \pm \dots \pm x_n$ 的描述; 确定如何在 $x_1 - x_2 - \dots - x_n$ 中添加括号,以使其与原表达式等价;最多可以使用 $n - 1$ 对括号; * 将该添加方式输出。
输入格式
第一行包含一个整数 $n$ ($2 \le n \le 1\,000\,000$),表示表达式中变量的数量。接下来的 $n - 1$ 行,每行包含一个字符,即 $+$ 或 $-$。第 $i$ 行的字符表示原表达式中 $x_i$ 和 $x_{i+1}$ 之间的运算符。
输出格式
程序应在标准输出的第一行打印所需的括号添加方式。仅需输出括号和减号(中间不含空格),忽略变量 $x_1, x_2, \dots, x_n$。你可以假设对于给定的测试数据,解总是存在的。如果存在多种可能的解,输出其中任意一种即可。
样例
输入格式 1
7 - - + + - +
输出格式 1
((-)-(--))-(-)