Sfida
È necessario scrivere un programma che accetta un numero intero positivo n
come input e genera il n
numero di Fibonacci (abbreviato come Fib # in tutto) che contiene il n
Fib # come una sottostringa. Ai fini di questa sfida, la sequenza di Fibonacci inizia con a 1
.
Ecco alcuni esempi che è possibile utilizzare come casi di test o come esempi per chiarire la sfida (per quest'ultimo, si prega di lasciare un commento in basso che spiega cosa non è chiaro).
n=1
Fib#s: 1
^1 1st Fib# that contains a 1 (1st Fib#)
Output: 1
n=2
Fib#s: 1, 1
^1 ^2 2nd Fib# that contains a 1 (2nd Fib#)
Output: 1
n=3
Fib#s: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233
^1 ^2 ^3 3rd Fib# that contains a 2 (3rd Fib#)
Output: 233
n=4
Output: 233
n=5
Output: 6765
n=6
Output: 28657
n=7
Output: 1304969544928657
n=8
Output: 14472334024676221
n=9
Output: 23416728348467685
n=10
Fib#s: 1, ..., 34, 55, 89, ..., 63245986, 102334155, 165580141, ..., 2880067194370816120, 4660046610375530309
^1 ^2 ^3 ^10 10th Fib# that contains a 55 (10th Fib#)
Output: 4660046610375530309
Come sempre, questo è code-golf , quindi cerca il conteggio di byte più basso possibile.
Se qualcosa è confuso / poco chiaro, si prega di lasciare un commento.
(Questa sfida si basa su un'altra sfida che ho pubblicato: Stampa l'ennesimo numero primo che contiene n )
n=25
(l'output ha 1186 cifre), quindi viene ucciso per n=26
(3085 cifre compilate sul mio laptop). Sembra che ci sia un salto in difficoltà ogni volta che si fib(n)
ottiene un'altra cifra (come ci si aspetterebbe). Il prossimo salto, 31, ha 12990 cifre nell'output finale.
n=5
testcase, perché ho appena fatto un errore sciocco in cui ho scritto un assegno che ha contato un numero più volte se aveva la sottostringa più di una volta.n=5
lo prenderei a causa del55
.