任务:
给定十进制数字系统中的整数,将其减少为一个十进制数字,如下所示:
- 将数字转换为十进制数字列表。
- 找出最大的数字D
- 从列表中删除D。如果出现多个D,请从左侧选择第一个(最重要的位置),所有其他D应保持不变。
- 将结果列表转换为十进制数字,然后将其乘以D。
- 如果数字大于9(具有超过1个十进制数字),请重复整个过程,并将结果输入其中。得到一个数字的结果时停止。
- 显示结果。
例:
26364 ->
1. 2 6 3 6 4
2. The largest digit is 6, so D=6
3. There are two occurrences or 6: at positions 1 and 3 (0-based). We remove the left one,
at position 1 and get the list 2 3 6 4
4. we convert the list 2 3 6 4 to 2364 and multiply it by D:
2364 * 6 = 14184
5. 14184 is greater than 9 so we repeat the procedure, feeding 14184 into it.
我们继续对14184重复该过程,依此类推,然后通过以下中间结果,最终达到8:
11312
3336
1998
1782
1376
952
468
368
288
224
88
64
24
8
所以26364的结果是8。
输入:整数/代表整数的字符串
输出:一位数,减法的结果应用于数字。
测试用例:
9 -> 9
27 -> 4
757 -> 5
1234 -> 8
26364 -> 8
432969 -> 0
1234584 -> 8
91273716 -> 6
这是代码高尔夫球,因此每种语言中以字节为单位的最短答案都将获胜。
10 -> 10
?