Rotar Cuadrados

Time Limit:
1 Sec
Memory Limit:
128Mb
Enviados:
261
Resuelto:
104
Enviar IDE Estado

Descripción

Si tenemos un cuadrado de números enteros de tamaño n, el contorno conforma un cuadrado de n*n, al interior existe un segundo contorno y así sucesivamente. Por ejemplo si tenemos el arreglo bidimensional de 5*5

1   2  3  4  5
6   7  8  9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25


El contorno que llamaremos nivel 0 esta formado por el cuadrado

1   2  3  4  5
6           10
11          15
16          20
21 22 23 24 25

El contorno de nivel 1 es el cuadrado interior

7   8  9
12    14
17 18 19

y finalmente el cuadrado de nivel 2 está formado por un solo numero el 13.

Rotar un contorno de nivel r significa rotar todos los elementos una posesión en sentido a las manecillas del reloj. La rotación del cuadrado de nivel 1 es:


12  7  8
17     9
18 19 14

Entrada

La primera linea de la entrada consiste de un numero n que tiene la dimension del arreglo. Luego siguen n lineas con n valores enteros.
Finalmente viene un numero r indicando el cuadro de que nivel rotar.

Salida

Escriba en la salida la matriz con el nivel solicitado rotado.

Ejemplo Entrada

Copy icon
5
1 2 3 4 5 
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
1

Ejemplo Salida

Copy icon
1 2 3 4 5
6 12 7 8 10
11 17 13 9 15
16 18 19 14 20
21 22 23 24 25

Ayuda