Como probablemente ahora, hay 2339 soluciones para el rompecabezas pentomino en una cuadrícula de 6x10. Existen diferentes esquemas de etiquetado para los 12 pentominoes, dos de ellos se muestran en la imagen a continuación:
Crédito de imagen: Wikipedia
A los fines de la tarea actual, diremos que una solución pentomino normalizada es una solución que utiliza el segundo esquema de etiquetado (Conway).
Ejemplo:
O O O O O S S S Z Z
P P R R S S W W Z V
P P P R R W W Z Z V
U U X R T W Y V V V
U X X X T Y Y Y Y Q
U U X T T T Q Q Q Q
La pieza con 5 cuadrados en fila se denota con letras O
, de acuerdo con el esquema. Lo mismo es cierto para todas las piezas.
Tarea:
Dada una solución para el pentomino 6x10 en el que las piezas están etiquetadas con un sheme aleatorio, normalícelo para que todas las piezas estén etiquetadas en el esquema de etiquetado de Conway. Debe reconocer las piezas y marcar cada cuadrado de una pieza en particular con el símbolo de la pieza.
Entrada:
La solución a normalizar, en cualquier formato que sea conveniente para usted, por ejemplo:
Una cuerda multilínea
Una lista de cadenas
Una lista de listas de personajes.
y así
Salida:
La misma solución (todas las posiciones y orientación de las piezas preservadas), pero cada pieza etiquetada de acuerdo con el esquema de etiquetado de Conway. Nota: La salida DEBE IMPRIMIRSE como una cuadrícula de caracteres de 6x10. Se permiten nuevas líneas y espacios iniciales y finales. También puede imprimir un espacio entre los caracteres (pero no las líneas vacías), como en el ejemplo anterior.
Casos de prueba:
1. Entrada:
6623338888
6222344478
66A234BB70
1AAA94B770
11A99BB700
1199555550
Salida:
UURTTTQQQQ
URRRTVVVSQ
UUXRTVZZSY
PXXXWVZSSY
PPXWWZZSYY
PPWWOOOOOY
2. Entrada:
45ookkkk00
455ooogk00
4a55gggdd0
4aaa3gnnd.
4am333ndd.
mmmm3nn...
Salida:
OWSSQQQQPP
OWWSSSRQPP
OTWWRRRUUP
OTTTXRZZUV
OTYXXXZUUV
YYYYXZZVVV
Criterios ganadores:
La solución más corta en bytes en cada idioma gana. No se desanime por los idiomas de golf. Las explicaciones de los algoritmos y las implementaciones son bienvenidas.