#P1358. 中缀表达式值(expr)

中缀表达式值(expr)

Description

输入一个中缀表达式(由0-9组成的运算数、加+减-乘*除/四种运算符、左右小括号组成。注意“-”也可作为负数的标志,表达式以“@”作为结束符),判断表达式是否合法,如果不合法,请输出“NO”;否则请把表达式转换成后缀形式,再求出后缀表达式的值并输出。

注意:必须用栈操作,不能直接输出表达式的值。

Input Format

一行为一个以@结束的字符串。

Output Format

如果表达式不合法,请输出“NO”,要求大写。
如果表达式合法,请输出计算结果。
1+2*8-9@
8

Source

3.1栈