Este es el Hoyo 9 del Torneo de Otoño de APL CodeGolf . Soy el autor original del problema allí y, por lo tanto, me permite volver a publicarlo aquí.
Dada una matriz booleana simple (rectangular, no dentada) (de una o más dimensiones), devuelve una lista de matrices así formadas donde la primera matriz es idéntica a la entrada y la última es verdadera. Todos los pasos intermedios deben tener una verdad más que su vecino a la izquierda (pero por lo demás deben ser idénticos). Para cada paso, el bit que se cambia debe elegirse seudoaleatoriamente (y puede tomar una semilla si es necesario).
Ejemplos
[0]
da [[0],[1]]
[[0]]
da [[[0]],[[1]]]
[[[1,1,1],[1,1,1],[1,1,1]],[[1,1,1],[1,1,1],[1,1,1]],[[1,1,1],[1,1,1],[1,1,1]]]
da [[[[1,1,1],[1,1,1],[1,1,1]],[[1,1,1],[1,1,1],[1,1,1]],[[1,1,1],[1,1,1],[1,1,1]]]]
Por supuesto, los resultados de los siguientes ejemplos pueden variar debido a la aleatoriedad; Estos son solo ejemplos de resultados válidos:
[0,1,0,0]
da [[0,1,0,0],[1,1,0,0],[1,1,0,1],[1,1,1,1]]
[[0,1,0],[0,0,1]]
da [[[0,1,0],[0,0,1]],[[1,1,0],[0,0,1]],[[1,1,0],[0,1,1]],[[1,1,1],[0,1,1]],[[1,1,1],[1,1,1]]]
[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]]
da [[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,0,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,0,0],[0,1,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,0,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,0,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,0],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,1,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,1]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,1]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,1]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,1,0,0,1]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,1,0,0,1]],[[1,1,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[0,1,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1],[1,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1],[1,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]]]
Respuestas:
Jalea , 12 bytes
Pruébalo en línea!
Cómo funciona
fuente
Python 2 , 197 bytes
Pruébalo en línea!
fuente
Wolfram Language (Mathematica) , 61 bytes
Pruébalo en línea!
Explicación
Encuentra todas las posiciones de
0
s en la matriz anidada.Baraja la lista de posiciones.
Dobla la función a la izquierda sobre la lista de posiciones barajada, usando la entrada como valor inicial, y recoge todos los pasos de la operación de doblado en el resultado.
Establezca el valor en la posición dada a
1
.fuente
R ,
938274 bytesPruébalo en línea!
Toma una R
logical
array
y devuelve unalist
delogical
array
s.Lo desagradable
sample(as.list(which(!a)))
es evitar un caso de bordesample
. Cuandoa
contiene exactamente unFALSE
valor en el índicei
,sample
devuelve una permutación aleatoria en1:i
lugar de una muestra aleatoria de tamaño que1
contiene solo el valori
, por lo que solíaas.list
evitarwhich(!a)
sernumeric
.La documentación de R
sample
se disculpa ligeramente por este comportamiento:fuente
Perl 5 , 78 + 1 (
-p
) = 79 bytesPruébalo en línea!
¿Formación? Que matriz? Es solo una cuerda larga.
fuente
Jalea , 19 bytes
Pruébalo en línea!
Probablemente podría ser más corto
Explicación
fuente
Python 2 ,
134132129 bytesPruébalo en línea!
fuente