Eine binäre Wiederholungssequenz ist eine rekursiv definierte Sequenz der folgenden Form:
Dies ist eine Verallgemeinerung der Fibonacci ( x = 1, y = 2, a = [1, 1], alpha = 1, beta = 1
) - Sequenz und der Lucas ( x = 1, y = 2, a = [2, 1], alpha = 1, beta = 1
) -Sequenz.
Die Herausforderung
In Anbetracht n
, x
, y
, a
, alpha
, und beta
in jedem vernünftigen Format, Ausgabe der n
th Laufzeit der entsprechenden binären Rezidiv - Sequenz.
Regeln
- Sie können wählen, ob die Sequenz entweder 1-indiziert oder 0-indiziert sein soll, aber Ihre Auswahl muss über alle Eingaben hinweg konsistent sein, und Sie müssen Ihre Auswahl in Ihrer Antwort notieren.
- Sie können davon ausgehen, dass keine ungültigen Eingaben angegeben werden (z. B. eine Sequenz, die vor endet
n
, oder eine Sequenz, die auf undefinierte Begriffe verweist, wieF(-1)
oderF(k)
wok > n
). Infolgedessenx
undy
wird immer positiv sein. - Die Ein- und Ausgänge sind immer Ganzzahlen innerhalb der Grenzen des natürlichen Ganzzahltyps Ihrer Sprache. Wenn Ihre Sprache unbegrenzte Ganzzahlen hat, liegen die Ein- und Ausgänge innerhalb des Bereichs
[2**31, 2**31-1]
(dh des Bereichs für eine 32-Bit-Ganzzahl mit vorzeichenbehafteten Zweierkomplementen). a
enthält immer genauy
Werte (gemäß Definition).
Testfälle
Hinweis: Alle Testfälle sind 0-indiziert.
x = 1, y = 2, a = [1, 1], alpha = 1, beta = 1, n = 6 => 13
x = 1, y = 2, a = [2, 1], alpha = 1, beta = 1, n = 8 => 47
x = 3, y = 5, a = [2, 3, 5, 7, 11], alpha = 2, beta = 3, n = 8 => 53
x = 1, y = 3, a = [-5, 2, 3], alpha = 1, beta = 2, n = 10 => -67
x = 5, y = 7, a = [-5, 2, 3, -7, -8, 1, -9], alpha = -10, beta = -7, n = 10 => 39
a
umgekehrten Reihenfolge als angemessen?