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 betain jedem vernünftigen Format, Ausgabe der nth 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). Infolgedessenxundywird 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). aenthält immer genauyWerte (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

aumgekehrten Reihenfolge als angemessen?