ACM-ICPC 2014 アジア地区東京大会 B

ACM-ICPC 2014 アジア地区東京大会

B: Miscalculation

問題
掛け算と足し算をつないだだけの数式Sと整数Aが与えられる。
(1) Sを掛け算優先で計算した時に、Aに等しいか判定せよ。
(2) Sを左の演算子優先で計算した時に、Aに等しいか判定せよ。

解法
(1)について、まずSを'+'で分断する。それぞれ積を計算して和を取る。
(2)について、左から計算する。

括弧が無いので高度なパーサーを書く必要は無い。
Javaのevalを使うのも有り。