Desplazamiento cíclico de la matriz con maximización de la suma de la diagonal

Rust Hard loops

Tarea «Desplazamiento cíclico de la matriz con maximización de la suma de la diagonal»

Dada una matriz cuadrada de números enteros de tamaño N x N. En un movimiento, se puede desplazar cíclicamente cualquier fila hacia la izquierda o hacia la derecha cualquier número de posiciones, o desplazar cíclicamente cualquier columna hacia arriba o hacia abajo cualquier número de posiciones. El objetivo es maximizar la suma de los elementos en la diagonal principal (desde la esquina superior izquierda hasta la esquina inferior derecha). Encuentre la suma máxima posible después de cualquier cantidad de dichas operaciones. N de 1 a 100, los elementos de la matriz son números enteros de -10^6 a 10^6.

Formato de entrada

En la primera línea, un número entero N. Luego, N líneas, cada una contiene N números enteros separados por espacios.

Formato de salida

Un número entero: la suma máxima en la diagonal principal.

Ejemplos

Ejemplo 1

ENTRADA
5 1 -2 3 -1 2
SALIDA
5

Ejemplo 2

ENTRADA
3 1 2 3 4 5 6 7 8 9
SALIDA
18

Ejemplo 3

ENTRADA
2 3 4 1 2
SALIDA
6
main.rs