问题3710--[JSOI2009]去括号

3710: [JSOI2009]去括号

时间限制: 1 Sec  内存限制: 512 MB
提交: 0  解决: 0
[提交] [状态] [讨论版] [命题人:]

题目描述

Luna进了中学之后,学到了代数表达式,但是表达式中总是会出现很多让人烦恼的括号,而实际上,有很多括号是可以去除掉的。比如说a+(b+c)-d就可以把括号去除,变为a+b+c-d。而a-(b+a)+d可以去除括号后变为a-b-a+d。Luna对计算机编程很感兴趣,所以她想是不是可以用计算机来解决这个问题。你能帮助她完成这个任务吗?

输入

输入的第一行有一个整数N。表示总共有N个表达式需要处理。接下来N行,每一行一个待处理的表达式,长度不超过255, 并且不含空格字符。表达式中的所有变量都是单个小写的英文字母, 运算符只有加+减-乘*除/。也就是说,在表达式中可能出现的字符为:a-z,+,-,*,/,()。数据保证表达式合法。 另外不考虑'+' '-'用作正负号的情况,即输入表达式不会出现(+a)或(-a)的情形。

输出

对于每个表达式输出去除括号后的表达式。

样例输入

9 
(a-a) 
a+(b+c)-d 
a-(b+a)+d 
(a+b)*(c+d) 
(a*b)+c/d 
((a+b)*f)-(i/j) 
a*(b/c) 
a-(b+c+(d*a)) 
a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*(p-q)+r*(s*t)*(u-(v+(w*x))*y)+z

样例输出

a-a 
a+b+c-d 
a-b-a+d 
(a+b)*(c+d) 
a*b+c/d 
(a+b)*f-i/j 
a*b/c 
a-b-c-d*a  
a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*(p-q)+r*s*t*(u-(v+w*x)*y)+z

来源/分类


[提交] [状态]