Si arrojas un huevo ASCII en una dirección determinada, terminas con un splat ASCII de tamaño n . "Comienza" con una o
(la yema), y continúa en una dirección dada con "líneas" que consisten en 2 hasta n *
's. Los *
's están separados por un "espacio", y las o
y todas las "líneas" de *
están separadas por "líneas" de "espacio".
La dirección del splat puede ser cualquiera de las ocho direcciones desde o
, por ejemplo:
1 2 3
4 o 5
6 7 8
Aquí hay ejemplos de símbolos ASCII de tamaño 4 en direcciones 5
, 2
y 3
respectivamente. A la izquierda es el splat ASCII real, y de la derecha es el mismo splat pero con las "líneas" de "espacio" sustituido con "líneas" reales (es decir, -
o \
o |
dependiendo de la dirección) sólo para aclarar lo que se entiende por una "línea" de espacio.
Size 4, direction 5
* | | |*
* | |*|
* * |*| |*
o * o| |*|
* * |*| |*
* | |*|
* | | |*
Size 4, direction 2
* * * * * * * *
-------
* * * * * *
-------
* * * *
-------
o o
Size 4, direction 3
* *
\
* * *\*
\ \
* * * *\*\*
\ \ \
o * * * o\*\*\*
Desafío
Dado n ≥ 1 y una de las 8 direcciones posibles, escriba una función o programa que genere el símbolo ASCII de tamaño n en la dirección dada.
Entrada y salida
Se permite cualquier formato de entrada coherente y razonable. No necesita asignar direcciones a los enteros 1 a 8 de la misma manera que lo hice yo; si alguna otra forma de especificar la dirección es más fácil, continúe. Pero di lo que hiciste si no está claro.
La salida consistirá o
, *
, espacios (U + 0020) y saltos de línea (U + 000A) que producen el splat ASCII. Se permiten espacios en blanco iniciales, finales y de otro modo en cualquier línea.
Reglas
Este es el código de golf . Aplican reglas estándar.
Más ejemplos
Size 1, any direction
o
Size 3, direction 6
* * o
* *
*
Size 5, direction 7
o
* *
* * *
* * * *
* * * * *