The operation of subtraction is not associative, e.g. (5-2)-1=2, but 5-(2-1)=4, therefore (5-2)-1<>5-(2-1). It implies that the value of the expression of the form 5-2-1 depends on the order of performing subtractions. In lack of brackets we assume that the operations are performed from left to right, i.e. the expression 5-2-1 denotes (5-2)-1. We are given an expression of the form
x1 +/- x2 +/- ... +/- xn,
where each +/- denotes either + (plus) or - (minus), and x1,x2,...,xn denote (pairwise) distinct variables. In an expression of the form
we want to insert brackets in such a way as to obtain an expression equivalent to the given one. For example, if we want to obtain an expression equivalent to the expression
we may insert brackets into
Note: Brackets that surround none or only one variable are not allowed.
TaskWrite a program which:
InputIn the first line of the text file min.in there is one integer n, 2<=n<=1 000 000. This is the number of variables in the given expression. In each of the following n-1 lines there is one character + or -. In the i-th line there is the sign appearing between xi-1 and xi in the given expression.
OutputIn the first line of the output text file min.out your program should write the requested way of bracket insertion into the expression x1-x2-...-xn. Only brackets and minuses (without spaces between them) should be written, and the variables x1,x2,...,xn ought to be skipped. You may assume that for the test data there is always a solution. If there exist many possible solutions your program should write one of them.
ExampleFor the following input file min.in:
7 - - + + - +a correct answer is in the following output file min.out:
Print friendly version