主要任务
您的任务是按从1开始的降序打印整数,并在您再次击中1时逐渐增大,直到达到给定的输入为止,然后打印其余部分,直到再次击中1。输入示例6
:
1
21
321
4321
54321
654321
Without newlines (valid output):
121321432154321654321
旁注:这是OEIS中的A004736。同样,第一个示例(带有换行符)是无效的输出,如规则中所指定。
输入项
您的代码可以采用整数或数字形式的任何形式的输入(图形,STDIN)。
输出量
您的代码应该输出上述序列,直到达到输入数字为止,然后完成输出直到再次达到1。输出可以是任何东西,因此可以是数字,字符串,整数或图形输出。必须打印出一个数字(如果是字符串,则不能换行)。您的输出可以输入和输出任意数量的字符(例如[]
)。
由于存在一些误解,因此您可以尝试以下正则表达式模式。
^(\D*(\d)+\D*)$
规则
- 输出必须是一个完整的数字,不能被任何东西分割,甚至不能换行。
- 该算法不应检查以任何方式出现的N的第一个实例(例如
21
in121321
),而应检查N 的第一个实例作为实际数字。 - 允许使用一条尾随的换行符。
- 负输入的处理完全由您选择,负数不是您应该测试的情况。
测试用例
Input: 6
Output: 121321432154321654321
Input: 1
Output: 1
Input: 26
Output: 121321432154321654321765432187654321987654321109876543211110987654321121110987654321131211109876543211413121110987654321151413121110987654321161514131211109876543211716151413121110987654321181716151413121110987654321191817161514131211109876543212019181716151413121110987654321212019181716151413121110987654321222120191817161514131211109876543212322212019181716151413121110987654321242322212019181716151413121110987654321252423222120191817161514131211109876543212625242322212019181716151413121110987654321
Input: 0
Output: 0, Empty, or Error
Input: 21
Output: 121321432154321654321765432187654321987654321109876543211110987654321121110987654321131211109876543211413121110987654321151413121110987654321161514131211109876543211716151413121110987654321181716151413121110987654321191817161514131211109876543212019181716151413121110987654321212019181716151413121110987654321
感谢@Emigna,我使用他的算法来计算这些测试用例。
优胜者
获胜者已被选中!这是ErikGolfer的答案,令人印象深刻的5个字节!恭喜你!
[1, 21, 321, 4321, 54321, 654321]
这个怎么样?[1,2,1,3,2,1,4,3,2,1,5,4,3,2,1,6,5,4,3,2,1]
或者,您只是在谈论具有单个元素的数组,例如[121321432154321654321]
?
mickey321211mouse
。确实\D
零件没有理由在那儿
The output must be a full number ...
您是指整个序列,还是仅指不同的子字符串(1、2、1、3 ...)?您的第一个示例似乎与此语句不匹配。