后缀表达式,又称逆波兰式,指的是不包含括号,运算符放在两个运算对象的后面,所有的计算按运算符出现的顺序,严格从左向右进行(不再考虑运算符的优先规则)。
后缀表达式可以按照如下的思路进行求解:如果在表达式中遇到运算符,就进行运算符前两个数使用这个运算符进行计算,结果保留,再进行后续的计算,再次遇到运算符时,计算过程同上。
请你用编程将输入的后缀表达式求值后输出。
输入一行表示后缀表达式,注意每个数或符号之间有一空格隔开,最后输入 @ 表示输入结束。(给定的表达式不超过 1000 个字符)
注意:本题中遇到除法运算,只需要计算整除的结果,不需要保留小数。
测试数据保证表达式中整数数值 以及 整数之间进行加减乘除运算得到的结果都在 0\sim 10^8 的范围内。
输出一个整数,表示该表达式的值。
14 3 20 5 / * 8 - + @
18
容器 stack