시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 128 MB | 1 | 0 | 0 | 0.000% |
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
x1-x2-…-xn
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
x1-x2-x3+x4+x5-x6+x7
we may insert brackets into
x1-x2-x3-x4-x5-x6-x7
as follows:
((x1-x2)-(x3-x4-x5))-(x6-x7).
Note: Brackets that surround none or only one variable are not allowed.
Write a program which:
In the first line of the standard input 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.
In the first line of the standard output 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.
7 - - + + - +
((-)-(--))-(-)
Olympiad > Polish Olympiad in Informatics > POI 2001/2002 > Stage 3 1번
Contest > Algorithmic Engagements > PA 2002.05 4-1번