Oto całkiem proste wyzwanie:
Biorąc pod uwagę ciąg reprezentujący liczbę w nieznanej bazie, określ najniższą możliwą bazę, w której może znajdować się liczba. Ciąg będzie zawierał tylko
0-9, a-z
. Jeśli chcesz, możesz wybrać wielkie litery zamiast małych, ale określ to. Musisz podać tę najniższą możliwą podstawę w systemie dziesiętnym.
Oto bardziej konkretny przykład. Jeśli ciąg wejściowy to „01234”, to niemożliwe jest, aby ta liczba była binarna, ponieważ 2, 3 i 4 są niezdefiniowane binarnie. Podobnie, liczba ta nie może znajdować się w podstawie 3 ani w bazie 4. Dlatego też liczba ta musi znajdować się w podstawie 5 lub wyższej, więc powinieneś wypisać „5”.
Twój kod musi działać dla dowolnej bazy między bazą 1 (unary, wszystkie „0”) a bazą 36 („0-9” i „a-z”).
Możesz przyjmować dane wejściowe i dostarczać dane wyjściowe w dowolnym rozsądnym formacie. Wbudowane konwersje podstawowe są dozwolone. Jak zwykle obowiązują standardowe luki, a zwycięzcą jest najkrótsza odpowiedź w bajtach!
Test IO:
#Input #Output
00000 --> 1
123456 --> 7
ff --> 16
4815162342 --> 9
42 --> 5
codegolf --> 25
0123456789abcdefghijklmnopqrstuvwxyz --> 36
You must output this lowest possible base in decimal.