あなたの仕事は、入力nとして正の数を取り、任意のベースでnの最も長いrep-digit表現の長さを出力することです。たとえば、7は次のいずれかとして表すことができます
111_2
21_3
13_4
12_5
11_6
10_7
7_8
REP-桁がある111_2
と11_6
、111_2
私たちの答えは3であるので、長いです。
これはコードゴルフの質問なので、回答はバイト単位でスコアリングされ、バイト数は少ない方が良いでしょう。
テストケース
1 -> 1
2 -> 1
3 -> 2
4 -> 2
5 -> 2
6 -> 2
7 -> 3
8 -> 2
9 -> 2
10 -> 2
11 -> 2
26 -> 3
63 -> 6
1023-> 10
サンプル実装
これは、より多くのテストケースを生成するために使用できるHaskellの実装です。
f 0 y=[]
f x y=f(div x y)y++[mod x y]
s x=all(==x!!0)x
g x=maximum$map(length.f x)$filter(s.f x)[2..x+1]
222
。ベース3にあります。
base > 1
?