Un entero positivo puede representarse en una base entera 1 <= b < inf
.
Cuando se convierte a esa base, tiene cierto número de dígitos distintos.
Cualquier número entero positivo en la base 1
tiene 1
un dígito distinto.
La mayoría de los enteros positivos en la base 2
tienen 2
dígitos distintos, las excepciones son las de la forma 2^n - 1
, que solo tienen 1
.
Entonces, el primer entero positivo que se puede representar en una base entera con 1
un dígito único es 1
y el primero que se puede representar con 2
dígitos distintos es 2
.
Podemos decir que 1
es el primer número entero con diversidad digital 1
y 2
es el primer número entero con diversidad digital 2
.
Desafío:
Dado un entero positivo, n
devuelve el primer entero positivo (en base diez *) que tiene una diversidad digital de n
.
* si su idioma solo es compatible con una base específica (p. ej., unario o binario), puede imprimir en esa base.
Su algoritmo debe funcionar en teoría para cualquier entrada entera positiva: puede fallar porque la precisión del entero de su idioma es demasiado pequeña para la salida; pero puede no fallar porque la conversión base solo se define hasta cierto límite.
Casos de prueba
input output
1 1
2 2
3 11
4 75
5 694
6 8345
7 123717
17 49030176097150555672
20 5271200265927977839335179
35 31553934355853606735562426636407089783813301667210139
63 3625251781415299613726919161860178255907794200133329465833974783321623703779312895623049180230543882191649073441
257 87678437238928144977867204156371666030574491195943247606217411725999221158137320290311206746021269051905957869964398955543865645836750532964676103309118517901711628268617642190891105089936701834562621017362909185346834491214407969530898724148629372941508591337423558645926764610261822387781382563338079572769909101879401794746607730261119588219922573912353523976018472514396317057486257150092160745928604277707892487794747938484196105308022626085969393774316283689089561353458798878282422725100360693093282006215082783023264045094700028196975508236300153490495688610733745982183150355962887110565055971546946484175232
Este es el código de golf , la solución más corta en bytes gana.
OEIS: A049363 - también el número pandigital más pequeño en la base n.