Максимальная сумма подмассива с перестановками

Swift Сложный arrays

Задача «Максимальная сумма подмассива с перестановками»

Дан массив целых чисел. Разрешено выполнить не более одной операции: выбрать любой подмассив и переставить его элементы произвольным образом. Найдите максимально возможную сумму любого непрерывного подмассива после выполнения этой операции (или без неё). Массив может содержать отрицательные числа. Ограничения: длина массива до 10^5, элементы от -10^9 до 10^9.

Формат ввода

Первая строка: целое число n (1 ≤ n ≤ 10^5) — длина массива. Вторая строка: n целых чисел через пробел — элементы массива.

Формат вывода

Одно целое число — максимальная сумма подмассива после не более одной перестановки.

Примеры

Пример 1

ВВОД
5 1 -2 3 4 -5
ВЫВОД
8

Пример 2

ВВОД
4 -1 -2 -3 -4
ВЫВОД
-1

Пример 3

ВВОД
/tmp/testdir *.txt
ВЫВОД
/tmp/testdir/subdir/file1.txt a1b2c3d4e5f6... /tmp/testdir/file2.txt 1234567890abcdef...

Пример 4

ВВОД
Hello World
ВЫВОД
3

Пример 5

ВВОД
3 5 -1 3
ВЫВОД
8
main.swift