Wprowadzenie
Ksenodrom w podstawie n jest liczbą całkowitą, w której wszystkie jego cyfry w podstawie n są różne. Oto niektóre sekwencje ksenodromów OEIS.
Na przykład, w bazie 16 FACE
, 42
i FEDCBA9876543210
są pewne xenodromes (które są 64206
, 66
a 18364758544493064720
w bazie 10), ale 11
i DEFACED
nie są.
Wyzwanie
Biorąc pod uwagę podstawę wejściową, n , wyprowadza wszystkie ksenodromy dla tej podstawy w podstawie 10 .
Wyjście powinno być w kolejności od najmniejszej do największej. Powinno być jasne, gdzie kończy się termin w sekwencji, a zaczyna nowy (np. [0, 1, 2]
Jest jasne, gdzie 012
nie ma).
n będzie liczbą całkowitą większą niż 0.
Wyjaśnienia
To wyzwanie wykonuje operacje wejścia / wyjścia szczególnie w bazie 10, aby uniknąć obsługi liczb całkowitych i ich bazy jako ciągów. Wyzwanie polega na abstrakcyjnym postępowaniu z każdą bazą. W związku z tym dodam tę dodatkową zasadę:
Liczby całkowite nie mogą być przechowywane jako ciągi znaków w bazie innej niż baza 10.
Twój program powinien być w stanie teoretycznie poradzić sobie z rozsądnie wysokim n, jeśli nie byłoby czasu, pamięci, precyzji lub innych technicznych ograniczeń we wdrażaniu języka.
To jest golf golfowy , więc wygrywa najkrótszy program w bajtach.
Przykład wejścia i wyjścia
1 # Input
0 # Output
2
0, 1, 2
3
0, 1, 2, 3, 5, 6, 7, 11, 15, 19, 21
4
0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 18, 19, 24, 27, 28, 30, 33, 35, 36, 39, 44, 45, 49, 50, 52, 54, 56, 57, 75, 78, 99, 108, 114, 120, 135, 141, 147, 156, 177, 180, 198, 201, 210, 216, 225, 228
ssize_t
. Czy łamanie w ten sposób jest dopuszczalne?