评估给定的omnifix表达式。
Omnifix就像普通的数学中缀表示法一样,只是参数周围带有每个符号的其他副本。外部符号代替括号,因此不需要其他括号。
您必须-0-n-
在您的语言的合理范围内支持加,减,乘,除和正实数(可以写负数)。
加号和减号必须为+
和-
,但是您可以将*
或×
用作时间和/
或÷
除法。根据要求也可以使用其他合理的符号。
核仁巧克力饼指出了解释和其他功能(例如其他操作,负数,字符串等),即使您的答案没有这些功能,也可以随时演示如何实现。
请提供链接以测试您的解决方案。
例子
为了清楚起见,以下说明使用高减号(¯
)表示负数。您可以使用任何合理的格式返回负数。
-5-2-
→ 3
+2+×3×2×+
→ 8
(+2+×3×2×+
→ +2+6+
→ 8
)
-14--3-1--
→ 12
(-4--3-1--
→ -14-2-
→ 12
)
+2.1+×3.5×2.2×+
→ 9.8
(+2.1+×3.5×2.2×+
→ +2.1+7.7+
→ 9.8
)
×3×÷-0-6-÷2÷×
→ -9
(×3×÷-0-6-÷2÷×
→ ×3×÷¯6÷2÷×
→ ×3ׯ3×
→ ¯9
)
÷4÷-3-÷1÷2÷-÷
→ 1.6
(÷4÷-3-÷1÷2÷-÷
→ ÷4÷-3-0.5-÷
→ ÷4÷2.5÷
→ 1.6
)
-
s可以与-
s 混淆,而¯
s不能与-
s 混淆。
The explanations below use high minus (`¯`) to indicate negative numbers.
您绝对喜欢APL。