3つの整数が与えられた場合、最初の2つの整数が3番目の整数に乗算するための可能な最小の基底を決定します。生命、宇宙、そしてすべての究極の質問に対する答えを考えるなら、6 * 9 == 42はベース13に当てはまります。
入力には、数字が0〜9、a〜z、およびA〜Zを使用する任意の数字を含めることができます。ここで、a
基数10では10、基数10ではZ
61です。
入力は任意の方法で入力する必要があり(ハードコーディングを除く)、個々の関数またはプログラム全体を記述できます。
考慮しなければならない最大ベースはベース62、最小ベースはベース2です。
最初の2つの値は3番目の値よりも小さいと仮定できます。また、最小基数は入力の最上位桁/文字よりも1つ大きいと結論付けることができます(たとえば、入力がの3 1a 55
場合、最小基数はa
最上位桁であるためBase 11になります)。
そのようなベースがない場合、選択したジャンク値を返します。
これはコードゴルフなので、最短のコードが勝ちます。
テストケース
6 9 42 --> 13
a a 64 --> 16
aA bB 36jk --> 41
2 3 20 --> <junk value>
10 10 100 --> 2
b
1のような一般的な方法a_0 b^0 + a_1 b^1 + a_2 b^2 + ...
(a_0
最下位桁は)で定義すると、ベース1は間違いなく理にかなっています。最大の現在の数字が0の場合はさらに、OPの結論はまた、検索でベース1が含まれるであろう