问题 5657 --逆波兰式

5657: 逆波兰式

题目描述

逆波兰式就是后缀表达式,它的定义如下: + 单个数字如 $6$,$8$ 等都是后缀表达式; + 如果 $e_1$,$e_2$ 都是后缀表达式,则 $e_1 e_2 \+$、$e_1 e_2 \-$、$e_1 e_2 \*$ 都是后缀表达式; + 不满足以上两条规则的表达式都不是后缀表达式。 给定一个后缀表达式(保证合法),请计算表达式的值,并输出它模 $10$ 的余数。 注意,为了方便起见,我们省略了除法,同时也规定在表达式中出现的数字只能由一位数构成。

输入

一个字符序列:表示输入的后缀表达式。每个字符间用一个空格分开。保证输入字符只可能出现 `0` 到 `9` 及 `+`,`-`,`*` 三种运算符,且构成一个合法的后缀表达式。

输出

单个数字:表示表达式的值模 $10$ 的余数,注意余数必须大于或等于零。

样例输入输出

输入#1 复制
3 4 +
输出#1 复制
7
输入#2 复制
2 3 3 + *
输出#2 复制
2
输入#3 复制
1 2 * 3 + 4 * 5 - 6 + 7 * 8 - 9 +
输出#3 复制
8
输入#4 复制
1 5 -
输出#4 复制
6

提示

记输入的可见字符数量为 $n$, + 对于 $50\%$ 的数据,$1\leq n\leq 100$; + 对于 $100\%$ 的数据,$1\leq n\leq 100,000$。 样例2说明:2*(3+3)=12
序号 标题 作者 发表时间 费用 订购数 操作