Existe un juego mental llamado Enumerate (que hice, basado en Takuzu ). Tu desafío es jugar este juego.
Tarea
Resuelve un juego de 4x4 Enumerate / Takuzu.
- Reciba una grilla inicial a través de STDIN o línea de comando.
- Salida de la cuadrícula resuelta a través de STDOUT o escribiendo en el archivo.
Reglas
Un juego se caracteriza por un tablero de 4x4, formado por celdas rojas y moradas.
Debe haber el mismo número de celdas rojas y moradas en cada fila y columna (2 rojas y 2 moradas en cada una).
No debe haber filas o columnas idénticas.
Entrada
La parrilla de salida será dado como una cadena de 16 caracteres / byte que consiste en solamente 0
, 1
y 2
. Aquí hay un ejemplo:
0001100002001200
1
representa una celda roja y 2
representa una celda púrpura. Todas las placas de entrada serán solucionables.
Nota: Si su idioma no admite la entrada literal de cadenas , puede tomar la entrada como una matriz de enteros. Indique en su respuesta que este es el caso. Entonces no hay confusión, así es como debería verse dicha matriz:
[0, 0, 0, 1, 1, 0, 0, 0, 0, 2, 0, 0, 1, 2, 0, 0]
No se permiten matrices anidadas.
Salida
La placa resuelta debe salir en el mismo formato que el anterior; una cadena de 16 caracteres / byte, que consta de solo 1
y 2
. Aquí está la solución para la entrada anterior:
2121112222111212
Nuevamente, 1
representa una celda roja y 2
representa una celda púrpura.
Bonos
Se ofrece una bonificación de -25 bytes por cualquier respuesta que genere la placa resuelta como una cuadrícula ASCII. Aquí hay un ejemplo del tablero mencionado anteriormente.
2|1|2|1
-+-+-+-
1|1|2|2
-+-+-+-
2|2|1|1
-+-+-+-
1|2|1|2
Se ofrece una bonificación de -50 bytes por cualquier respuesta que muestre la placa resuelta en color. Esto se puede generar como una imagen o texto en color.
Si se elige texto en color, el resultado debería verse así:
2121
1122
2211
1212
Sin embargo, si una imagen es el método de salida elegido, el archivo resultante debe tener 20x20 píxeles, donde cada celda es un bloque de color de 5x5 píxeles. Aquí hay un ejemplo:
Aquí están los códigos de colores:
Red - #a73cba OR (167, 60, 186)
Purple - #f94a32 OR (249, 74, 50)
Muestras
In: 0020010100000100
Out: 1221212112122112
In: 0010000200121000
Out: 2211112221121221
In: 1000100102000000
Out: 1122122122112112
0
, 1
y 2
? ¿Qué pasa con una matriz bidimensional?