Maximale Summe eines Subarrays mit Permutationen

Swift Hard arrays

Aufgabe «Maximale Summe eines Subarrays mit Permutationen»

Gegeben ist ein Array von ganzen Zahlen. Es ist erlaubt, maximal eine Operation durchzuführen: Wähle ein beliebiges Subarray und ordne seine Elemente beliebig neu an. Finde die maximal mögliche Summe eines beliebigen zusammenhängenden Subarrays nach Durchführung dieser Operation (oder ohne sie). Das Array kann negative Zahlen enthalten. Einschränkungen: Länge des Arrays bis zu 10^5, Elemente von -10^9 bis 10^9.

Eingabeformat

Erste Zeile: eine ganze Zahl n (1 ≤ n ≤ 10^5) — die Länge des Arrays. Zweite Zeile: n ganze Zahlen, durch Leerzeichen getrennt — die Elemente des Arrays.

Ausgabeformat

Eine ganze Zahl — die maximale Summe des Subarrays nach höchstens einer Permutation.

Beispiele

Beispiel 1

EINGABE
5 1 -2 3 4 -5
AUSGABE
8

Beispiel 2

EINGABE
4 -1 -2 -3 -4
AUSGABE
-1

Beispiel 3

EINGABE
/tmp/testdir *.txt
AUSGABE
/tmp/testdir/subdir/file1.txt a1b2c3d4e5f6... /tmp/testdir/file2.txt 1234567890abcdef...

Beispiel 4

EINGABE
Hello World
AUSGABE
3

Beispiel 5

EINGABE
3 5 -1 3
AUSGABE
8
main.swift