网站页面
当前课程
成员
常规
第二章 递归算法
第三章 排列组合问题
第四章 高精度算法
第五章 排序算法
第六章 穷举算法
第七章 贪心算法
第八章 递推算法
第九章 搜索算法
第十章 模拟算法
第十一章 动态规划
剔除多余括号
成绩 | 100 | 开启时间 | 2016年05月22日 星期日 07:10 |
折扣 | 0.8 | 折扣时间 | 2016年05月22日 星期日 07:10 |
允许迟交 | 是 | 关闭时间 | 2016年05月22日 星期日 07:10 |
输入文件 | bracket.in | 输出文件 | bracket.out |
【问题描述】剔除多余括号(bracket. cpp/c/pas)
《道德经》中有云:“万物之始,大道至简,衍化至繁”所以当墨老师看到一个表示算式的字符串(含四则运算、乘方、括号)中包含有很多多余的括号时,受强迫症的影响,他就会要求你去掉多余的括号,并保持原表达式中变量和运算符的相对位置不变,且与原表达式等价。
注意,只是要求你去括号,并没有要求你化简表达式!此外,“+”和“-”不会用作正负号。例如输入表达式:
a+(b+c)
(a*b)+c/d
a+b/(c-d)
应输出表达式:
a+b+c
a*b+c/d
a+b/(c-d)
注意:表达式以字符串输入,所有字母为小写字母,长度不超过255。输入不需判错,输入a+b时不能输出b+a,只是要求去掉多余括号,不要对表达式化简。
【输入格式】
输入文件为bracket.in,为一行表达式。
【输出格式】
输出文件为bracket.out,为一行去括号的表达式。
【输入样例】
a+(b+c)
【输出样例】
a+b+c