#P11951. 波兰表达式

波兰表达式

题目描述

波兰表达式,也称为前缀表达式,是一种数学表达式的写法,其中运算符位于其运算数之前。例如,中缀表达式 A + B 在波兰表达式中写作 + A B

现在,小可可有一个已知的波兰式,请帮他计算该表达式的值。

  • 计算方法:从右向左扫描波兰式,遇到运算符就计算
  • 假设表达式中只有 +- 两种运算符

输入格式

共 2 行:

  • 第一行:正整数 n,表示波兰式中元素的个数(包括运算符和运算数)
  • 第二行:波兰式,每个元素 p 由空格分隔。p 是运算符 +- 或 1 ≤ p ≤ 100 的整数

保证每个波兰式都是正确可计算的。

输出格式

共 1 行,一个整数,表示波兰式的计算结果。

输入样例 #1

5  
- + 10 100 13

输出样例 #1

97

输入样例 #2

5  
+ 10 - 20 13

输出样例 #2

17

题目说明

  • 数据范围:1 ≤ n ≤ 100
  • p 为 +- 或 1 ≤ p ≤ 100 的整数

样例解析

样例1:从右向左扫描,遇到 +,取两个数 10 和 100,相加得到 110;继续向左扫描,遇到 -,取 110 和 13,相减得到 97。

样例2:从右向左扫描,遇到 -,取 20 和 13,相减得到 7;继续向左扫描,遇到 +,取 10 和 7,相加得到 17。