Fondo
En los lenguajes de programación más razonables, es muy fácil rotar las filas o columnas de una matriz 2D. En este desafío, su tarea es rotar los antiagoniales en su lugar. Recuerde que las antiagoniales de una matriz 2D son sus cortes 1D tomados en la dirección noreste ↗.
Entrada
Una matriz 2D rectangular no vacía de números de un solo dígito en cualquier formato razonable. Tenga en cuenta que la matriz puede no ser un cuadrado.
Salida
La misma matriz, pero con cada anti-diagonal girado un paso hacia la derecha.
Ejemplo
Considere la 3x4
matriz de entrada
0 1 2 3
4 5 6 7
8 9 0 1
Los anti-diagonales de esta matriz son
0
4 1
8 5 2
9 6 3
0 7
1
Sus versiones rotadas son
0
1 4
2 8 5
3 9 6
7 0
1
Por lo tanto, la salida correcta es
0 4 5 6
1 8 9 0
2 3 7 1
Reglas y puntaje
Puede escribir un programa completo o una función. También es aceptable escribir una función que modifique la matriz de entrada en su lugar, si su idioma lo permite. El conteo de bytes más bajo gana, y las lagunas estándar no se permiten.
Tabla de clasificación
Aquí hay un fragmento de pila para generar una tabla de clasificación regular y una descripción general de los ganadores por idioma.
Para asegurarse de que su respuesta se muestre, comience con un título, usando la siguiente plantilla de Markdown:
## Language Name, N bytes
¿Dónde N
está el tamaño de su envío? Si desea incluir varios números en su encabezado (por ejemplo, porque su puntaje es la suma de dos archivos, o desea enumerar las penalizaciones de la bandera del intérprete por separado, o desea mostrar los puntajes antiguos que mejoró), asegúrese de que el puntaje real es el último número en el encabezado.
Casos de prueba adicionales
Input:
4
Output:
4
Input:
5 6 1
Output:
5 6 1
Input:
0 1
6 2
Output:
0 6
1 2
Input:
6 3 0 8
4 6 1 4
6 2 3 3
9 3 0 3
Output:
6 4 6 1
3 6 2 3
0 9 3 0
8 4 3 3
Input:
5 8 2
6 7 3
2 6 1
6 0 6
6 4 1
Output:
5 6 7
8 2 6
2 6 0
3 6 4
1 6 1
Input:
9 9 4 0 6 2
2 3 2 6 4 7
1 5 9 3 1 5
0 2 6 0 4 7
Output:
9 2 3 2 6 4
9 1 5 9 3 1
4 0 2 6 0 4
0 6 2 7 5 7