ONP - Transform the Expression


Transform the algebraic expression with brackets into RPN form (Reverse Polish Notation). Two-argument operators: +, -, *, /, ^ (priority from the lowest to the highest), brackets ( ). Operands: only letters: a,b,...,z. Assume that there is only one RPN form (no expressions like a*b*c).

Input

t [the number of expressions <= 100]
expression [length <= 400]
[other expressions]

Text grouped in [ ] does not appear in the input file.

Output

The expressions in RPN form, one per line.

Example

Input:
3
(a+(b*c))
((a+b)*(z+x))
((a+t)*((b+(a+c))^(c+d)))

Output:
abc*+
ab+zx+*
at+bac++cd+^*

hide comments
gutsav: 2016-08-13 21:46:58

AC one go whooo hooo :D

nikhil10sep: 2016-08-13 18:15:49

test cases do not check for cases like a^b+c

guneet_1995: 2016-08-10 20:42:24

Please only solve using stack if coding in java c or c++ , DO NOT TRY STRING AND STRINGBUFFERS made it more complicated.
find a RPN stack algo and implement it.
At last I did it gives me happiness.

kmrrv: 2016-08-08 15:04:09

AC on one go :)

cnexans: 2016-08-02 21:05:29

No need for a stack, although it's the best way. Take in count the operations listed, because the test cases don't include all of them. Cost me one WA.

vikash1143: 2016-07-26 20:15:56

phew:):)

Ashvjit Singh: 2016-07-13 09:48:07

if anyone is having any problem, I suggest you study about RPN.
Very simple question with poor description.

xinnix: 2016-07-11 07:09:33

Good for learning stack...

atingarg93: 2016-07-08 09:06:56

.

Last edit: 2016-07-08 09:07:19
code_killerx: 2016-06-18 19:17:41

Stack 101 AC in one go!!


Added by:Michał Małafiejski
Date:2004-05-01
Time limit:5s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: NODEJS PERL 6 VB.net
Resource:-

Problem's scores 1 vote

Concept difficulty
Concept difficulty 22%
Implementation difficulty
Implementation difficulty 18%
59 2