Latar Belakang
Dalam tantangan ini, basis- brepresentasi integer nadalah ekspresi dari nsebagai jumlah dari kekuasaan b, di mana setiap istilah terjadi pada sebagian besar b-1kali. Sebagai contoh, 4representasi dasar 2015adalah
4^5 + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Sekarang, keturunan dasar- brepresentasi ndiperoleh dengan mengubah eksponen menjadi dasar- mereka brepresentasi, kemudian mengubah eksponen mereka, dan seterusnya secara rekursif. Jadi, 4representasi dasar herediter dari 2015is
4^(4 + 1) + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Sebagai contoh yang lebih kompleks, 3representasi turun temurun dari
7981676788374679859068493351144698070458
adalah
2*3^(3^(3 + 1) + 2) + 3 + 1
The perubahan dasar turun-temurun dari ndari bkec , dilambangkan H(b, c, n), adalah jumlah yang diperoleh dengan mengambil basis-turun-temurun brepresentasi n, menggantikan setiap boleh 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 >= 0dan 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)