introduction
Un xénodrome en base n est un entier où tous ses chiffres en base n sont différents. Voici quelques séquences OEIS de xénodromes.
Par exemple, dans la base 16, FACE, 42et FEDCBA9876543210quelques xenodromes (qui sont 64206, 66et 18364758544493064720en base 10), mais 11et DEFACEDne sont pas.
Défi
Étant donné une base d'entrée, n , sortez tous les xénodromes pour cette base dans la base 10 .
La sortie doit être dans l'ordre du plus petit au plus grand. Il doit être clair où un terme dans la séquence se termine et un nouveau commence (par exemple, il [0, 1, 2]est clair où il 012ne l'est pas.)
n sera un entier supérieur à 0.
Clarifications
Ce défi fait IO spécifiquement dans la base 10 pour éviter de manipuler des entiers et leur base comme des chaînes. Le défi consiste à gérer de manière abstraite n'importe quelle base. En tant que tel, j'ajoute cette règle supplémentaire:
Les entiers ne peuvent pas être stockés sous forme de chaînes dans une base autre que la base 10.
Votre programme devrait être en mesure de gérer théoriquement un n élevé s'il n'y avait pas de temps, de mémoire, de précision ou d'autres restrictions techniques dans la mise en œuvre d'un langage.
C'est le code-golf , donc le programme le plus court, en octets, gagne.
Exemple d'entrée et de sortie
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. Est-ce que la rupture de cette manière est acceptable?