La mina de sal polaca más antigua , ubicada en Bochnia *, se inició en el año 1248, que podemos considerar un número mágico . Podemos ver que es igual a 4 dígitos de la secuencia de exponenciación: .
Como la fecha es en realidad 4 dígitos de la secuencia, podríamos alargarla. Podríamos repetir el proceso hasta llegar al infinito. La secuencia se vería así, si la limitamos a número2048
124816326412825651210242048
Para que se vea un poco mejor, podemos separar los números:
1|2|4|8|16|32|64|128|256|512|1024|2048
Probemos una secuencia personalizada más larga que la fecha. Digamos que queremos que tenga 5 dígitos; hay más de una posibilidad:
24816
81632
64128
O los de 3 dígitos:
124
248
816
También podríamos agregar los números de 3 dígitos a esto, pero digamos que una secuencia debe tener al menos dos números .
* No hay información sobre esto en la Wikipedia en inglés. Si ingresa la versión polaca, entonces la hay. Si visita la mina, los trabajadores también le dirán que comenzó en 1248.
El reto
Cree una secuencia de exponenciación como en los ejemplos anteriores con 2 como base.
Dado un número del rango 2-27, salida todas las partes posibles de la secuencia (la 2048 o más grande si lo desea) con una cantidad de dígitos igual a la entrada. No puede cortar un número, por lo que la salida como 481
no es válida, porque 16 se corta por la mitad.
Reglas:
- Lagunas estándar están prohibidas.
- Puede suponer que la entrada es un número dentro del rango.
- Su programa puede aceptar entradas mayores que el rango (28+), pero eso no aumentará / disminuirá la puntuación.
- Los espacios en la salida se ignoran. Puede generar like
124
o like4 8 16
. - Las diferentes posibilidades deben estar separadas por cualquier carácter de la lista:
,./|
o un avance de línea. - Se puede generar como una matriz.
- Cada posibilidad debe incluir al menos 2 números diferentes .
- Debe salida de una parte de la secuencia, no se puede mezclar números que no están uno al lado del otro, como:
14
. - La salida codificada no está permitida, sin embargo, puede codificar una cadena / número / matriz que contenga la secuencia completa.
- La entrada 27 debería devolver la secuencia completa de 2048.
- Como ya se mencionó anteriormente, no corte los números . Ex.
16
debe quedarse16
, no puede usar481
, debe usar4816
. - EDITAR: Podría haber dicho algo mal allí; 2048 es el último número que su programa debería admitir, puede agregar soporte para int's más grandes.
Casos de prueba
Entrada: 2
12, 24, 48
Entrada: 3
124, 248, 816
Entrada: 4
1248, 4816, 1632, 3264
Entrada: 5
24816, 81632, 64128
Entrada: 27
124816326412825651210242048
Y luego números ...
Si cometí un error en alguno de los casos de prueba, dígame o edite la pregunta.
Este es el código de golf , por lo que gana el código más corto en bytes.