網際網路程式設計全國大賽

初賽題目


題目(7) Prefix 表示法的運算式之計算求值
執行檔PREFIX.EXE
輸入檔PREFIX.IN
輸出檔PREFIX.OUT
執行時間限制30 秒

Prefix是一種運算式的表示法,在這一種表示法中,運算子放在其運算元之前,例如, A/B 的 prefix 表示法即為 /AB。而 A/B*C 的 prefix 表示法即為 */ABC,其計算方式為先計算 /AB,再計算 (*(/AB)C)。底下是幾個範例:

一般prefix計算次序
A/B*C*/ABC((AB/)C*)
A*B+C-D/E-G--+*ABC/DEG((((AB*)C+)(DE/)-)G-)

請設計一個程式,將一個以 prefix 表示的運算式的值計算出來。運算子將只有 +、-、*、/ 四種,運算元為不大於 1000 的非負整數。其中除法運算(/),其結果必須轉換為整數,取不大於實際除法結果的最大整數。

輸入檔說明

輸入檔第一列有一個數字 n,表示後面有 n 列,每列有一個以 prefix 表示的運算式,不同的運算子與運算元之間以一個以上的空白分開,你必須將該運算式的值計算出來。每列的運算元和運算子總共加起不會超過 30 個。

輸出檔說明

總共輸出 n 列結果,依輸入順序印出 prefix 運算式的值。

範例

PREFIX.IN
2
+ - / 10 2 3 1
100
PREFIX.OUT
3
100