Дано 3 цілих числа, визначте найнижчу можливу основу, щоб перші два цілі числа помножилися на треті. Якщо ви думаєте, що відповідь на остаточне питання життя, Всесвіту і всього, 6 * 9 == 42, вірно в Базі 13.
Вхідні дані можуть включати будь-які числа, в цифрах яких використовуються символи 0-9, az та AZ, де a
дорівнює 10 у базі 10, таZ
в базі 10 - 61.
Входи слід вводити будь-яким способом (за винятком жорсткого кодування), і ви можете написати або окрему функцію, або всю програму.
Максимальна база, яку необхідно враховувати, - це база 62, а мінімальна - база 2.
Можна припустити, що перші два значення менші за третє. Ви також можете зробити висновок, що мінімальна база на один більший, ніж найвища цифра / символ із входів (наприклад, якщо входи є 3 1a 55
, то мінімальна база буде базою 11, оскількиa
це найвища цифра).
Якщо такої бази немає, поверніть непотрібну величину.
Це кодовий гольф, тому виграє найкоротший код.
Випробування
6 9 42 --> 13
a a 64 --> 16
aA bB 36jk --> 41
2 3 20 --> <junk value>
10 10 100 --> 2
b
в загальному вигляді, як a_0 b^0 + a_1 b^1 + a_2 b^2 + ...
(де a_0
є найменш значуща цифра), ніж база 1, безумовно, має сенс. Крім того, висновок ОП також включатиме базу 1 у пошуку, якщо найбільша теперішня цифра дорівнює 0.