编写一个使用正整数N的程序或函数。输出所有可以使用数字(),小数点()和负号()精确写成N个字符的十进制数的列表。0123456789
.
-
例如,一些数字,这将是在N = 4输出列表是1337
,3.14
,.999
,-789
,-2.7
,和-.09
。
数字应以正常方式书写,但应尽可能短。这表示:
如果数字不是整数,则仅应包括小数点。
- 例如
45.0
,45.
应该写成普通的45
-45.00
应该写成-45
- 例如
小数点左边不应有前导零。
03
并003
应为书面3
,但30
并300
都很好,因为它们是0.3
并且00.3
应该写成刚.3
-03
应该写成-3
-0.3
应该写成-.3
小数点右边不应有尾随零
.50
并且.500
应写为.5
900.090
应该写成900.09
最后两个规则的例外是零本身,应始终将其写为plain
0
。+
请勿使用正号(),因为它们会不必要地加长数字。
另请注意,负号(-
)不应用作减号。它只能作为小于零的数字的第一个字符出现。
格式化
数字输出列表的顺序无关紧要。它可以是上升,下降或完全混合。仅存在所有可以用N个字符写入的不同数字的问题。
列表可以使用空格,换行符,逗号或数字之间的其他某种形式的合理格式设置,只要条件保持一致即可。前括号和后括号(或类似的括号)都可以,但数字引号之类的东西却不是。(即,不要在输出中明显混淆字符串和整数/浮点数。)
例如,当N = 1时,一些有效输出将是:
0 1 2 3 4 5 6 7 8 9
[1, 2, 3, 4, 5, 6, 7, 9, 0]
ans = { 5 8 9 1 3 2 0 3 4 7 6 }
但这将是无效的:
[0, 1, 2, 3, 4, "5", "6", "7", "8", "9"]
例子
N = 1 -> 0 1 2 3 4 5 6 7 8 9
N = 2 -> -9 -8 -7 -6 -5 -4 -3 -2 -1 .1 .2 .3 .4 .5 .6 .7 .8 .9 10 11 12 ... 97 98 99
N = 3 -> -99 -98 ... -11 -10 -.9 -.8 ... -.2 -.1 .01 .02 ... .98 .99 1.1 1.2 ... 1.9 2.1 2.2 ... 2.9 3.1 ...... 9.9 100 101 ... 998 999
列表按升序排列,在某些地方为省略而省略以方便阅读。
计分
以字节为单位的最短代码获胜。如果是平局,则以投票较高的答案为准
Also note that the negative sign (-) should not be used as a subtraction sign. It should only appear as the first character of numbers less than zero.
0
”。
-0
是有效的输出?