Herausforderung
Sie müssen ein Programm schreiben, das eine positive Ganzzahl n
als Eingabe verwendet und die n
th-Fibonacci-Zahl (durchgehend als Fib # abgekürzt) ausgibt , die die n
th-Fib # als Unterzeichenfolge enthält. Für diese Herausforderung beginnt die Fibonacci-Sequenz mit a 1
.
Hier sind einige Beispiele, die Sie als Testfälle oder als Beispiele zur Verdeutlichung der Herausforderung verwenden können (für letztere hinterlassen Sie bitte einen Kommentar, der erklärt, was Sie für unklar halten).
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
Wie immer ist dies Codegolf , also versuchen Sie die niedrigste mögliche Bytezahl.
Wenn etwas verwirrend / unklar ist, hinterlassen Sie bitte einen Kommentar.
(Diese Herausforderung basiert auf einer anderen Herausforderung, die ich veröffentlicht habe: Gib die n-te Primzahl aus, die n enthält. )
n=25
(die Ausgabe hat 1186 Stellen) und wird dann für n=26
(3085 Stellen, die auf meinem eigenen Laptop kompiliert wurden) getötet. Es scheint einen Sprung in den Schwierigkeitsgrad zu geben, wenn fib(n)
eine weitere Ziffer erreicht wird (wie zu erwarten). Der nächste Sprung, 31, hat 12990 Stellen in der endgültigen Ausgabe.
n=5
Testfall einzuschließen, weil ich gerade einen dummen Fehler gemacht habe, bei dem ich einen Scheck geschrieben habe, der eine Zahl mehrmals gezählt hat, wenn er den Teilstring mehr als einmal hatte.n=5
würde das wegen der fangen55
.