当我还是个孩子的时候,想算一算生活中的美元钞票时,我会大声数出:
一,二,三,四,五,六,七,八,九,十;
十一,十二,十三,十四,十五,十六,十七,十八,十九,二十;
21、22、23、24、25 ...
最终我厌倦了念出这些多音节数字。出于数学考虑,我创建了一种更有效的计数方法:
一,二,三,四,五,六,七,八,九,十;
一,二,三,四,五,六,七,八,九,二十;
一,二,三,四,五,六,七,八,九,三十...
如您所见,我只会说出与前一个数字已更改的数字。这还有一个额外的优势,即它比数字的英文名称具有更大的重复性,因此需要较少的脑力来进行计算。
挑战
编写一个程序/函数,该程序接受一个正整数,然后输出/返回我将如何对其进行计数:即,最右边的非零数字和所有尾随的零。
例子
1 1
2 2
10 10
11 1
29 9
30 30
99 9
100 100
119 9
120 20
200 200
409 9
1020 20
规则
- 理论上,您的条目必须适用于所有正整数,而忽略精度和内存问题。
- 输入和输出必须为十进制。
- 您可以选择将输入和/或输出作为数字,字符串或数字数组。
- 输入保证为正整数。您的输入可以为无效输入做任何事情。
这是code-golf,因此以字节为单位的最短代码获胜。
[1,0,2,0]
->[2,0]
用于最后一个测试用例?(我不清楚“单项数组”这句话)。