Ваше завдання - взяти додатне число як вхід, n та вивести довжину найдовшого репрезентативного представлення n у будь-якій базі. Наприклад, 7 може бути представлений як будь-яке з наведених нижче
111_2
21_3
13_4
12_5
11_6
10_7
7_8
Повторні цифри є 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
?