Dada una matriz de enteros positivos en la base 10, donde n > 0
, generan su representación de una pared binaria.
¿Como funciona esto?
- Convierta cada número en su representación binaria.
- Rellene la representación con ceros a la longitud del más largo, es decir,
1, 2
->1, 10
->01, 10
. - Crea un muro donde los
1
s son ladrillos y0
faltan ladrillos.
Un muro es un bloque de caracteres donde cualquier carácter imprimible representa un ladrillo y un espacio ( 32
) representa un ladrillo perdido. Puede elegir cualquier personaje para el ladrillo, no necesita ser distinto a través de la pared siempre que no sea un personaje de espacio en blanco. El personaje de ladrillo que falta debe ser un espacio. Para el siguiente ejemplo, he usado *
para los ladrillos.
Ejemplo
Entrada:
[ 15, 7, 13, 11 ]
[ 1111, 111, 1101, 1011 ]
[ 1111, 0111, 1101, 1011 ]
Salida:
**** *** ** * * **
Reglas
- La entrada debe tomarse en la base 10, si su idioma acepta otras bases, no puede usarlas.
- Se permiten nuevas líneas iniciales y finales.
- La entrada puede tomarse como una lista de enteros, argumentos separados o cualquier formato razonable.
- La salida puede estar en cualquier formato razonable: cadena separada por línea nueva, matriz de líneas, matriz 2D, etc.
- Las lagunas estándar no están permitidas.
Casos de prueba
Tenga en cuenta que en el primer caso de prueba, todas las capas tienen un ladrillo vacío al final.
[ 14, 4, 6, 2 ]
***
*
**
*
[ 1, 2, 4, 8, 16 ]
*
*
*
*
*
[ 15, 11, 15, 15 ]
****
* **
****
****
[ 11, 10, 9, 8 ]
* **
* *
* *
*
Este es el código de golf, ¡el código más corto gana!
[[1, " ", 1, " "], ...]