Hintergrund
Sie wurden kürzlich von einer kleinen Wirtschaftsprüfungsgesellschaft eingestellt. Die Welt des Rechnungswesens ist für Sie etwas fremd. Sie sind sich also nicht sicher, ob Sie alle professionellen Richtlinien einhalten. Insbesondere wissen Sie nicht, wann Sie all diese Zahlen runden sollten und in welche Richtung. In den meisten Fällen drehen Sie also einfach los und hoffen auf das Beste.
Eingang
Ihre Eingabe ist eine einzelne Zeichenfolge, die eine einfache Berechnung darstellt. Es enthält eine Anzahl nichtnegativer Ganzzahlen, die durch die Zeichen begrenzt werden +-*/
. Die Zeichenfolge liest von links nach rechts und die normalen Prioritätsregeln werden ignoriert. Das "23+1*3/4"
bedeutet also "Beginnen Sie mit 23, addieren Sie 1, multiplizieren Sie mit 3 und dividieren Sie mit 4". Das Ergebnis ist 18. Die Eingabe enthält keine Zahlen, die mit beginnen 0
(außer sich 0
selbst), noch eine Division durch Null.
Ausgabe
In jeder Stufe der Berechnung können Sie das Ergebnis entweder auf die nächste Ganzzahl auf- oder abrunden oder es so lassen, wie es ist. Zuletzt runden Sie entweder auf oder ab, um ein ganzzahliges Ergebnis zu erhalten. Ihre Ausgabe ist die Liste der Ganzzahlen, die sich aus einer solchen Berechnung ergeben können, sortiert und ohne Duplikate.
Regeln
Sie können entweder ein vollständiges Programm oder eine Funktion schreiben. Die niedrigste Byteanzahl gewinnt, und Standardlücken sind nicht zulässig.
Testfälle
"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
, der fehlschlagen kann, wenn Sie Gleitkommazahlen verwenden.