以下是翻译结果: 最大可跳过子数组和

Kotlin Hard lists

任务 «以下是翻译结果: 最大可跳过子数组和»

给定一个整数列表。需要找到子数组(连续元素序列)的最大和,条件是从该子数组中最多可以删除一个元素(以获得更大的和)。删除元素不是必须的。如果列表为空,则和视为0。列表长度最多为10^5,元素范围从-10^4到10^4。

输入格式

第一行包含一个整数 N (1 ≤ N ≤ 100000) — 列表中的元素数量。第二行包含 N 个由空格分隔的整数。

输出格式

一个整数——删除不超过一个元素后子数组的最大可能和。

示例

示例 1

输入
3 10 20 30
输出
60

示例 2

输入
1 2 3
输出
2
main.kt