Sphere Online Judge



SPOJ Problem Set (classical)

4. Transform the Expression

Problem code: ONP

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+^*

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

hide comments
2015-02-21 15:38:45 Abhyudaya Ranglani
I've been struggling like crazy to get rid of NZEC. I am almost certain that this code (http://ideone.com/********) deals appropriately with all possible statements that may throw exceptions. I think the memory constraint might be the issue here. Would appreciate any help.


(Francky) => Kindly read the notes, and use forum for any help.

Last edit: 2015-02-21 15:53:05
2015-02-18 04:55:45 Serene Brackets
It's good that you people know the answer, but don't give the hints here. Let people figure it out and have fun doing it.
2015-02-13 18:17:40 Roshan Jha
learnt a new thing from this question .. good question
2015-02-10 17:01:28 Shubham Kaushik
http://ideone.com/Y3nRP0
Please let me know what is wrong in the solution...As it works fine on ideone also
2015-01-31 13:49:06 Indian Cyber Army (IndiShell)
stack implementation
2015-01-26 07:51:21 Shabeeb Hashim
Fully parenthesized expression :),so no need to use infix to post fix conversion algorithm,it is simpler than that...
2015-01-18 12:39:15 Sachin verma
Well Rishab Both are differnet test case

Last edit: 2015-01-18 12:40:12
2015-01-18 07:55:55 Rishabh Agarwal
is this is a test case : (a + b^c)
or there will be parenthesis always i.e.
( a+ (b^c))
2015-01-14 20:07:22 Sachin verma
here +- got same priority and /* got same but higher than +-and( and ^ has highest priority
->must take case of case when stack is empty and you tring to get top or pop element
->no need to take care of case/problem with no () at all

Last edit: 2015-01-14 20:11:46
2015-01-08 07:14:32 Vinshi Vanvat
operating successfully on ideone but segmentation fault coming on spoj.. please help !!!
http://ideone.com/I005Vq
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.