Hintergrund
In dieser Herausforderung eine base bDarstellung einer ganze Zahl nist Ausdruck nals eine Summe von Potenzen von b, wo jeder Begriff höchstens tritt b-1Zeiten. Zum Beispiel kann die basen- 4Darstellungsart 2015ist
4^5 + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Nun wird die erbliche Basisdarstellung bvon nerhalten, indem die Exponenten in ihre Basisdarstellungen bkonvertiert werden, dann ihre Exponenten konvertiert werden und so weiter rekursiv. So ist die erbliche base- 4Darstellung 2015IS
4^(4 + 1) + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Als komplexeres Beispiel dient die erbliche Basisrepräsentation 3von
7981676788374679859068493351144698070458
ist
2*3^(3^(3 + 1) + 2) + 3 + 1
Die erbliche Basisänderung von nvon bbisc , bezeichnet H(b, c, n), ist die Zahl, die erhalten wird, indem die erbliche Basisdarstellung bvon genommen nwird, jede bdurch ersetzt cwird und der resultierende Ausdruck bewertet wird. Zum Beispiel der Wert von
H(3, 2, 7981676788374679859068493351144698070458)
ist
2*2^(2^(2 + 1) + 2) + 2 + 1 = 2051
Die Herausforderung
Sie werden als Eingang drei ganze Zahlen gegeben b, c, n, für die Sie übernehmen n >= 0und b, c > 1. Ihre Ausgabe ist H(b, c, n). Die kürzeste Byteanzahl gewinnt und Standardschlupflöcher sind nicht zulässig. Sie können entweder eine Funktion oder ein vollständiges Programm schreiben. Sie müssen in der Lage sein, beliebig große Ein- und Ausgänge (Bignums) zu verarbeiten.
Testfälle
4 2 3 -> 3
2 4 3 -> 5
2 4 10 -> 1028
4 4 40000 -> 40000
4 5 40000 -> 906375
5 4 40000 -> 3584
3 2 7981676788374679859068493351144698070458 -> 56761
2 3 2051 -> 35917545547686059365808220080151141317047
Fun Fact
Für jede ganze Zahl ndie durch
n1 = n
n2 = H(2, 3, n1) - 1
n3 = H(3, 4, n2) - 1
n4 = H(4, 5, n3) - 1
....
erreicht schließlich 0. Dies ist als Goodsteins Theorem bekannt .
D(GHY=Z0)R&Y+*%YG^H(GHZ)(GH/YGhZ. Fühlen Sie sich frei, es hinzuzufügen, wenn Sie möchten (ich gehe zu Tipps für das Golfen in Python: D)