Se le da un cuadrado matriz , y una lista (o vector) de longitud contiene los números a (o a ). Su tarea es reordenar las columnas y filas de la matriz acuerdo con el orden especificado en .
Eso es, se construye una matriz en donde el elemento-ésimo es el elemento -ésimo de . También debe generar el inverso de esta acción; es decir, el elemento-ésima (i, j) de va a terminar en la posición en una nueva matriz .
Por ejemplo, dado
la salida debe ser
Puede tomar entrada y salida a través de cualquiera de los métodos de E / S predeterminados. No tiene que especificar qué matriz es o , siempre que genere ambas. Puede suponer que solo contiene enteros positivos, y puede usar indexación basada en 1 o 0 para . Debe admitir matrices de al menos .
Ejemplo
===== Input =====
A =
35 1 6 26 19 24
3 32 7 21 23 25
31 9 2 22 27 20
8 28 33 17 10 15
30 5 34 12 14 16
4 36 29 13 18 11
u=
3 5 6 1 4 2
==== Output =====
B =
2 27 20 31 22 9
34 14 16 30 12 5
29 18 11 4 13 36
6 19 24 35 26 1
33 10 15 8 17 28
7 23 25 3 21 32
C =
17 15 8 10 28 33
13 11 4 18 36 29
26 24 35 19 1 6
12 16 30 14 5 34
21 25 3 23 32 7
22 20 31 27 9 2
0
como separador?
u = [2, 0, 1]
?