Latar Belakang
Dalam tantangan ini, basis- b
representasi integer n
adalah ekspresi dari n
sebagai jumlah dari kekuasaan b
, di mana setiap istilah terjadi pada sebagian besar b-1
kali. Sebagai contoh, 4
representasi dasar 2015
adalah
4^5 + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Sekarang, keturunan dasar- b
representasi n
diperoleh dengan mengubah eksponen menjadi dasar- mereka b
representasi, kemudian mengubah eksponen mereka, dan seterusnya secara rekursif. Jadi, 4
representasi dasar herediter dari 2015
is
4^(4 + 1) + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Sebagai contoh yang lebih kompleks, 3
representasi turun temurun dari
7981676788374679859068493351144698070458
adalah
2*3^(3^(3 + 1) + 2) + 3 + 1
The perubahan dasar turun-temurun dari n
dari b
kec
, dilambangkan H(b, c, n)
, adalah jumlah yang diperoleh dengan mengambil basis-turun-temurun b
representasi n
, menggantikan setiap b
oleh c
, dan mengevaluasi ekspresi yang dihasilkan. Misalnya, nilai
H(3, 2, 7981676788374679859068493351144698070458)
adalah
2*2^(2^(2 + 1) + 2) + 2 + 1 = 2051
Tantangan
Anda diberikan sebagai masukan tiga bilangan bulat b
, c
, n
, yang Anda mungkin menganggap n >= 0
dan b, c > 1
. Output Anda adalah H(b, c, n)
. Hitungan byte terpendek menang, dan celah standar tidak diizinkan. Anda dapat menulis fungsi atau program lengkap. Anda harus dapat menangani input dan output yang besar dan sewenang-wenang (bignum).
Uji Kasus
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
Fakta Menarik
Untuk bilangan bulat apa pun n
, urutan diperoleh oleh
n1 = n
n2 = H(2, 3, n1) - 1
n3 = H(3, 4, n2) - 1
n4 = H(4, 5, n3) - 1
....
akhirnya mencapai 0
. Ini dikenal sebagai teorema Goodstein .
D(GHY=Z0)R&Y+*%YG^H(GHZ)(GH/YGhZ
. Jangan ragu untuk menambahkannya jika Anda mau (saya akan tips untuk bermain golf di pyth: D)