tło
W tym wyzwaniu podstawowa breprezentacja liczby całkowitej njest wyrażeniem nsumy potęg b, gdzie każdy termin występuje w większości b-1przypadków. Na przykład podstawowa 4reprezentacja 2015to
4^5 + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Teraz, dziedziczny Base- bprzedstawienie notrzymuje się przez przeprowadzenie ich w wykładniki Base- breprezentacje następnie przekształcenie ich wykładniki itd rekurencyjnie. Zatem dziedziczna podstawowa 4reprezentacja 2015jest
4^(4 + 1) + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Jako bardziej złożony przykład dziedziczna 3reprezentacja bazy
7981676788374679859068493351144698070458
jest
2*3^(3^(3 + 1) + 2) + 3 + 1
Dziedziczne zmianę zasady z nod bceluc , oznaczone H(b, c, n)jest liczbą otrzymywaną poprzez dziedziczne zasadową- breprezentację n, zastępując co bo ci oceny uzyskanej ekspresji. Na przykład wartość
H(3, 2, 7981676788374679859068493351144698070458)
jest
2*2^(2^(2 + 1) + 2) + 2 + 1 = 2051
Wyzwanie
Są podane jako wejście trzy liczby całkowite b, c, n, dla których można założyć n >= 0i b, c > 1. Twój wynik to H(b, c, n). Wygrywa najkrótsza liczba bajtów, a standardowe luki są niedozwolone. Możesz napisać funkcję lub pełny program. Musisz być w stanie poradzić sobie z dowolnie dużymi wejściami i wyjściami (bignum).
Przypadki testowe
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
Śmieszny fakt
Dla dowolnej liczby całkowitej nsekwencja uzyskana przez
n1 = n
n2 = H(2, 3, n1) - 1
n3 = H(3, 4, n2) - 1
n4 = H(4, 5, n3) - 1
....
w końcu sięga 0. Jest to znane jako twierdzenie Goodsteina .
D(GHY=Z0)R&Y+*%YG^H(GHZ)(GH/YGhZ. Dodaj go, jeśli chcesz (idę do wskazówek dotyczących gry w pyth: D)