Introducción
De Wikipedia :
Un mosaico de una superficie plana es el mosaico de un plano que utiliza una o más formas geométricas, llamadas mosaicos, sin superposiciones y sin huecos.
A continuación se muestra una teselación bastante conocida:
Los rombos están en mosaico de una manera que no produce solapamientos ni huecos, y simula el intercambio de columnas de cubos.
Tarea
Su tarea es escribir un programa que tesele rombos de la misma manera que la imagen de arriba. La entrada para el programa serán las dimensiones de la teselación: height x width
donde ancho es la cantidad de columnas y altura es la cantidad de filas.
Un cubo simple que es 1 x 1
(3 fichas de rombo) se representa exactamente de la siguiente manera:
_____
/\ \
/ \ \
/ \ _____\
\ / /
\ / /
\/_____ /
Entonces, si las entradas / dimensiones son 3 x 2
, esta debería ser la salida:
_____
/\ \
/ \ \
/ \ _____\ _____
\ / /\ \
\ / / \ \
\/_____ / \ _____\
/\ \ / /
/ \ \ / /
/ \ _____\/_____ /
\ / /\ \
\ / / \ \
\/_____ / \ _____\
/\ \ / /
/ \ \ / /
/ \ _____\/_____ /
\ / /\ \
\ / / \ \
\/_____ / \ _____\
\ / /
\ / /
\/_____ /
Como puede ver, hay 3 filas (alto) y 2 columnas (ancho). Las columnas se intercambian arriba y abajo. Su programa también debería hacer esto y comenzar más alto. Por ejemplo, 3 x 3
sería:
_____ _____
/\ \ /\ \
/ \ \ / \ \
/ \ _____\ _____ / \ _____\
\ / /\ \ / /
\ / / \ \ / /
\/_____ / \ _____\/_____ /
/\ \ / /\ \
/ \ \ / / \ \
/ \ _____\/_____ / \ _____\
\ / /\ \ / /
\ / / \ \ / /
\/_____ / \ _____\/_____ /
/\ \ / /\ \
/ \ \ / / \ \
/ \ _____\/_____ / \ _____\
\ / /\ \ / /
\ / / \ \ / /
\/_____ / \ _____\/_____ /
\ / /
\ / /
\/_____ /
Reglas
- El resultado se debe generar, la entrada se puede tomar de la forma que desee, pero debe corresponder con la altura y el ancho
- Se permiten nuevas líneas al final
- Las columnas de teselación siempre comienzan desde arriba y luego se alternan hacia arriba y hacia abajo
- Los lados de las teselaciones deben compartirse y las teselaciones deben colocarse correctamente entre las otras columnas sin espacios.
- Su envío puede ser una función o un programa completo
- Su programa debe imprimir exactamente la salida anterior dada la misma entrada; en otras palabras, la salida debe seguir el mismo formato para cubos / teselaciones
Supuestos
- Puede suponer que la entrada siempre será mayor que
1 x 1
, por lo que no necesita casos en los que se ingrese un cero
Puntuación
Este es el código de golf , por lo que gana el código más corto en bytes. Las lagunas estándar también están prohibidas.