Это не очень широко известно, но то, что мы называем последовательностью Фибоначчи, АКА
1, 1, 2, 3, 5, 8, 13, 21, 34...
на самом деле называется последовательность Duonacci . Это потому, что для получения следующего числа вы суммируете предыдущие 2 числа. Существует также последовательность Трибоначи ,
1, 1, 1, 3, 5, 9, 17, 31, 57, 105, 193, 355, 653, 1201...
потому что следующее число является суммой предыдущих 3 чисел. И последовательность Quadronacci
1, 1, 1, 1, 4, 7, 13, 25, 49, 94, 181, 349, 673...
И все любимые, последовательность Пентаначи :
1, 1, 1, 1, 1, 5, 9, 17, 33, 65, 129...
И последовательность Гексаначчи, последовательность Септаначчи, последовательность Октоначи и так далее, и так далее, вплоть до последовательности N-Боначи.
Последовательность N-Боначи всегда будет начинаться с N 1 с подряд.
Соревнование
Вы должны написать функцию или программу, которая принимает два числа N и X и печатает первые числа X N-Боначи. N будет целым числом больше 0, и вы можете смело предполагать, что числа N-Bonacci не превысят тип номера по умолчанию на вашем языке. Вывод может быть в любом удобочитаемом формате, и вы можете принять ввод любым разумным способом. (Аргументы командной строки, аргументы функций, STDIN и т. Д.)
Как обычно, это Code-golf, поэтому применяются стандартные лазейки и выигрывает самый короткий ответ в байтах!
Образец ввода-вывода
#n, x, output
3, 8 --> 1, 1, 1, 3, 5, 9, 17, 31
7, 13 --> 1, 1, 1, 1, 1, 1, 1, 7, 13, 25, 49, 97, 193
1, 20 --> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
30, 4 --> 1, 1, 1, 1 //Since the first 30 are all 1's
5, 11 --> 1, 1, 1, 1, 1, 5, 9, 17, 33, 65, 129
1, 1, 2, 4, 7
третьей позицией 0 + 1 + 1
? ... и так один с другими?