Una forma es quiral si ninguna cantidad de rotación puede hacer que parezca una imagen especular. En este rompecabezas escribiremos programas informáticos quirales.
Para este rompecabezas pensaremos en un programa como una matriz rectangular de caracteres. Como tal, todas las soluciones a este desafío deben ser rectangulares (es decir, todas las líneas deben tener la misma longitud). Podemos rotar estos programas en incrementos de cuarto de vuelta. Por ejemplo el programa
The quickish fish
lept deftly
rightwards
Cuando se gira un cuarto de vuelta en el sentido de las agujas del reloj parece
T
h
r e
i
glq
heu
tpi
wtc
a k
rdi
des
sfh
t
lf
yi
s
h
También podemos reflejar estos programas. Aquí está el mismo programa reflejado sobre un eje vertical:
hsif hsikciuq ehT
yltfed tpel
sdrawthgir
Un programa quiral es un programa que cuando se rota cualquier número de veces siempre generará " left
". Sin embargo, cuando se refleja produce un programa que emite " right
" sin importar cuántas veces se gire.
Su tarea es escribir un programa quiral en la menor cantidad de bytes posible.
Reglas Adicionales
La salida no distingue entre mayúsculas y minúsculas, pero debe ser coherente. (p. ej., puede mostrar "
LEFT
" y "rIgHt
" pero esta carcasa debe ser coherente bajo rotaciones)Las líneas deben dividirse en una nueva línea o una nueva línea y un salto de línea.
Su programa debe ser un rectángulo, puede rellenarlo con espacios o comentarios, pero cada línea debe tener la misma longitud.
Si lo desea, puede tener una nueva línea final (o nueva línea y salto de línea) en todos sus programas.
:set virtualedit=all
modo de bloqueo de Vim . La Bool
salida inicial verifica si la entrada es igual a su propia rotación, lo que simplifica las cosas. Eliminarlo {-
hace que imprima la entrada reflejada.