#455. 小码君的数学梦

小码君的数学梦

题目描述

在梦中小码君是一个数学达人,轻轻松松就学了表达式的后缀表达方法,所谓后缀表达式是指这样的一个表达式:式中不再引用括号,运算符号放在两个运算对象之后,所有计算按运算符号出现的顺序,严格地由左而右新进行(不用考虑运算符的优先级)。

如:3*(5–2)+7对应的后缀表达式为:3.5.2.-*7.+@。’@’为表达式的结束符号。‘.’为操作数的结束符号。

输入格式

输入:后缀表达式(表达式长度不超过50个字符)

输出格式

后缀表达式计算出的结果

样例

样例输入

3.5.2.-*7.+@

样例输出

16

数据范围与提示

1.初始化一个空栈。此桟用来对要运算的数字进出使用。

2.后缀表达式中前三个都是数字,所以3、5、2进栈。

3.接下来是减号“-”,所以将栈中的2出栈作为减数,5出栈作为被减数,并运算5-2得到3,再将3进栈。

4.接下来是乘号“*”,所以将栈中的3出栈作为因数1,3出栈作为因数2,并运算3*3得到9,再将9进栈。

5.接着是数字7进栈。

6.下面是加法“+”,所以找中7和9出找,7与9相加,得到16,将16进栈。

7.此时遇到终结字符'@',输出此为唯一的栈内元素16