Búsqueda de la suma máxima de un subarreglo después de un desplazamiento cíclico
Kotlin
Hard
loops
Tarea «Búsqueda de la suma máxima de un subarreglo después de un desplazamiento cíclico»
Dado un arreglo de números enteros. Se permite realizar exactamente un desplazamiento cíclico a la izquierda (el primer elemento se convierte en el último) o a la derecha (el último elemento se convierte en el primero) cualquier cantidad de veces, pero no más de la longitud del arreglo. Luego de esto, se debe encontrar la suma máxima de un subarreglo continuo (utilizando el algoritmo de Kadane). Se requiere determinar la mayor suma posible que se puede obtener después de realizar un desplazamiento cíclico. Si el arreglo está vacío, mostrar 0.
Formato de entrada
Primera línea: un número entero N (1 ≤ N ≤ 10^6) — longitud del arreglo. Segunda línea: N números enteros separados por espacios (cada uno en valor absoluto ≤ 10^9).
Formato de salida
Un número entero — la suma máxima del subarreglo después de un desplazamiento cíclico.
Ejemplos
Ejemplo 1
ENTRADA
4
-1 -2 -3 -4
SALIDA
-1
main.kt