这是MDLXVII年,在这个世界中,罗马帝国从未沦陷,也从未发生过陷入黑暗时代的崩溃。由于罗马帝国时期的延长,帝国的经济稳定使技术得以快速发展。
罗马人已经开始涉足电路,并发明了一种不需要使用“等于”按钮的巧妙计算器。他们称其为“罗马波兰语符号”
为了进行计算,它们首先输入其操作数,然后输入运算。
例如,100 + 11 * 20将是C XI XX * +
。
另外
罗马人发现他们经常需要同时进行多个计算,因此更喜欢该方法以某种类似于数组/列表/元组的结构“在堆栈上”返回每个值。(例如,X I + X I - CC II +
将返回[11,9,202])
挑战在于开发一种能够进行这些计算的计算器程序。
澄清:减法符号是必需的。我没有意识到这在古罗马帝国中并不是公认的特征。因此任务不明确,我对此表示歉意。
最低准则
- 您的输出将使用阿拉伯数字。
- 您只需将罗马数字转换为5000。
- 您将需要支持+,-,/,*操作(加,减,除和乘)。
- 除法是基于浮点还是基于整数是特定于实现的。两者都可以应对这一挑战。
- 您的输出将需要支持多达40亿个数字。
- 总的来说,答案最短,并且每种语言都取胜。这是一场Code Golf挑战赛,但我很喜欢这种变化。
如果出现平局,支持罗马数字大于5000或进行其他操作之类的因素将被认为是最早提交的申请。