背景
您最近被一家小型会计师事务所雇用。会计的世界对您来说有点陌生,因此您不确定是否要遵循所有专业准则。特别是,您不知道何时应该将所有这些数字取整,以及朝哪个方向取整,因此,大多数时候您只希望将其取整,并希望取得最好的结果。
输入值
您的输入是代表简单计算的单个字符串。它包含一些由字符分隔的非负整数+-*/
。字符串从左到右读取,并且普通优先级规则将被忽略,因此"23+1*3/4"
表示“以23开头,加1,乘以3,再除以4”,结果为18。输入将不包含以开头的数字0
(0
自身除外),也不能除以零。
输出量
在计算的每个阶段,您都可以将结果向上或向下舍入为最接近的整数,或者保持原样。最后,向上或向下舍入以获得整数结果。您的输出是可能由这种计算产生的整数列表,排序后没有重复。
规则
您可以编写完整的程序或函数。最低字节数获胜,并且不允许出现标准漏洞。
测试用例
"42" -> [42]
"2+0+4-0" -> [6]
"23+1*3/4" -> [18]
"5/2" -> [2,3]
"5/2+7/3*6-1" -> [17,18,19,23]
"23/2/2*30-170/3" -> [-7,-6,-2,-1,0,1,3,4]
"1/3*2*2*2*2*2*2" -> [0,16,20,21,22,24,32,64]
"1/3*9" -> [0,3,9]
1/3*9
,如果使用浮点数,则可能会失败。