Las teselaciones hexagonales , o las inclinaciones del avión, son de tres colores, lo que significa que usando solo tres colores, como Rojo, Azul y Verde, cada hexágono puede ser coloreado sin dos hexágonos que compartan un borde que comparta un color. Un ejemplo parcial que muestra tal patrón.
Dado un mosaico hexagonal parcial en ASCII (a través de STDIN, leyendo desde un archivo, etc.), cambie los colores de los caracteres (a través de códigos ANSI, manipulación de imágenes, etc.) para adaptarse a este color. El giro es el centro de los hexágonos (los *
siguientes son los tres colores, y las líneas intermedias deben ser una mezcla de sus dos *
colores correspondientes . Si la línea está en el borde exterior, debe coincidir con la correspondiente *
.
Por ejemplo, dado el mosaico hexagonal parcial de
/ \ / \ / \ / \
| * | * | * | * |
\ / \ / \ / \ /
| * | * | * |
\ / \ / \ /
supongamos que decidimos colorear el hexágono superior izquierdo *
para que sea Rojo, y sus dos vecinos sean Azul y Verde (en sentido horario). Entonces la |
línea debe ser magenta y la /
línea debe ser amarilla. Si seguimos coloreando, eventualmente terminaremos con algo como esto (ampliado para mayor claridad):
O, para una entrada de
/ \
| * |
/ \ /
| * |
/ \ /
| * |
\ /
puede colorearlo así (ampliado para mayor claridad):
Algunos casos de prueba adicionales (su código debería poder manejarlos):
/ \ / \
| * | * |
\ / \ /
| * |
/ \ / \
| * | * |
\ / \ /
/ \
| * |
\ / \
| * |
/ \ /
| * |
\ /
/ \
| * |
\ /
Reglas
- Se garantiza que la entrada tendrá al menos un hexágono, y ninguna entrada tendrá un "agujero".
- No necesita comenzar a colorear con rojo, siempre que mantenga la regla de los tres colores.
- Si el mosaico parcial puede ser de dos colores, puede hacerlo sin penalización (como en el segundo ejemplo); no necesariamente necesita extrapolar el mosaico parcial a un mosaico completo.
- Los centros del hexágono
*
deben estar coloreados con rojo, azul o verde, mientras que las líneas intermedias deben ser cian, amarillo o magenta. Por ejemplo, habiendo un Magenta*
no está permitido, y una Red|
o\
o/
debe estar en el borde exterior del dibujo. Ver colores , a continuación. - Si su consola no tiene estos colores exactos, utilice la aproximación más cercana y especifique en su respuesta qué aproximación está utilizando.
- Los espacios en blanco iniciales o finales, incluidas las nuevas líneas finales, son aceptables siempre que los caracteres se alineen.
- El mosaico parcial se puede ingresar con espacio para formar un rectángulo, si eso facilita su código.
- Un programa completo o una función son aceptables. Si es una función, puede devolver el resultado en lugar de imprimirlo.
- La salida puede ser a la consola, guardada como una imagen, etc.
- Las lagunas estándar están prohibidas.
- Este es el código de golf, por lo que se aplican todas las reglas habituales de golf, y gana el código más corto (en bytes).
Colores y mezclas de colores:
Los tres colores base disponibles son (con códigos de color en formato decimal RGB):
- rojo
(255,0,0)
- Verde
(0,255,0)
- Azul
(0,0,255)
Las combinaciones son:
- Rojo y verde se combinan para hacer amarillo
(255,255,0)
- Azul y verde se combinan para hacer cian
(0,255,255)
- El rojo y el azul se combinan para hacer magenta
(255,0,255)
*