Фон
В этой задаче базовое bпредставление целого числа nявляется выражением nв виде суммы степеней b, где каждый член встречается в большинстве b-1случаев. Например, base- 4представление 2015является
4^5 + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
Теперь наследственное базисное bпредставление nполучается путем преобразования показателей в их базовые bпредставления, затем преобразования их показателей и т. Д. Рекурсивно. Таким образом, наследственная base- 4представление 2015IS
4^(4 + 1) + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
В качестве более сложного примера, наследственная база- 3представление
7981676788374679859068493351144698070458
является
2*3^(3^(3 + 1) + 2) + 3 + 1
Наследственная база изменения nот bдоc , обозначаемый H(b, c, n), это число , полученное путем принятия наследственного base- bпредставления n, заменяя каждый с bпомощью c, и оценивая полученное выражение. Например, значение
H(3, 2, 7981676788374679859068493351144698070458)
является
2*2^(2^(2 + 1) + 2) + 2 + 1 = 2051
Соревнование
Вам предоставляется в качестве входных данных трех целых чисел b, c, n, для которых вы можете считать n >= 0и b, c > 1. Ваш выход H(b, c, n). Самый короткий счет байтов побеждает, и стандартные лазейки запрещены. Вы можете написать либо функцию, либо полную программу. Вы должны быть в состоянии обрабатывать произвольно большие входы и выходы (bignums).
Тестовые случаи
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
Интересный факт
Для любого целого числа nпоследовательность получается
n1 = n
n2 = H(2, 3, n1) - 1
n3 = H(3, 4, n2) - 1
n4 = H(4, 5, n3) - 1
....
в конце концов достигает 0. Это известно как теорема Гудштейна .
D(GHY=Z0)R&Y+*%YG^H(GHZ)(GH/YGhZ. Не стесняйтесь добавлять его, если хотите (я собираюсь дать советы по игре в гольф в пите: D)