您可能知道,斐波那契数是一个,它是该序列中前两个数的和。
斐波那契Digit™是前两个数字的总和。
例如,对于系列开始1,1,该系列将是1,1,2,3,5,8,13,4,7,11,2...。更改发生在之后,您可以13在其中添加而不是8+13添加1+3。系列在末尾循环,其中4+7=11和和1+1=2系列开始相同。
再例如,系列开始于2,2:2,2,4,6,10,1,1,2,3,5,8,13,4,7,11,2,3...。这个开始是唯一的,但是一旦数字总和到10,您最终得到1+0=1, 0+1=1,然后该系列继续进行-并循环-与该1,1系列相同。
挑战
给定一个整数输入0≤n≤99,请从这两个数字开始计算斐波那契数字系列中的循环。(当然可以允许您考虑超出此范围的整数,但这不是必需的。)如果输入的是一位数字,则您的代码应将其解释为表示序列的开头0,n。
循环中所有两位数字都必须输出为两位数字。因此,例如,for的循环1,1将包含13,而不是1,3。
输出从循环中的第一个数字开始。因此,基于上述限制,for的循环以1,1开头2,因为1,1和11分别计数。
只要是一致的,输出的每个数字都可以用您想要的分隔。在我所有的示例中,我都使用逗号,但是只要您始终使用相同的分隔符,都允许使用空格,换行符,随机字母等。所以2g3g5g8g13g4g7g11是一个合法的输出1,但2j3g5i8s13m4g7sk11并非如此。您可以使用字符串,列表,数组等任何东西,只要您具有以一致的分隔符分隔的正确顺序的正确数字。也可以用括号括住整个输出(例如(5,9,14)或[5,9,14]等)。
测试用例:
1 -> 2,3,5,8,13,4,7,11
2 -> 2,3,5,8,13,4,7,11
3 -> 11,2,3,5,8,13,4,7
4 -> 3,5,8,13,4,7,11,2
5 -> 2,3,5,8,13,4,7,11
6 -> 3,5,8,13,4,7,11,2
7 -> 14,5,9
8 -> 13,4,7,11,2,3,5,8
9 -> 11,2,3,5,8,13,4,7
0 -> 0
14 -> 5,9,14
59 -> 5,9,14
这是code-golf,因此赢得的字节数最少。
14并59给出相同的结果。如果59将其解释为开始5,9并允许其作为循环的一部分,那么肯定14是其循环的开始吗?
0,1,1,2,3,5,8,13,4,7,11,2,3。循环的第一次重复是在第二次2。
1,4,5,9,14,5和5,9,14,5,9。他们都从第二个开始重复5。就像我之前说的,只有输入是分开的。后面的数字按顺序将它们的数字保持在一起。