#abc173d. [abc173_d]Chat in a Circle

[abc173_d]Chat in a Circle

题目描述

在在线游戏_ATChat_的教程结束后不久,你决定和另外N1N-1个玩家一起去一个特定的地方。这NN个玩家,包括你自己,编号为11NN,并且玩家ii友好程度AiA_i

NN个玩家将按某种顺序一个接一个地到达这个地方。为了确保没有人迷路,你制定了以下规则:已经到达那里的玩家应该形成一个圆圈,而刚刚到达那里的玩家应该在圆圈的某个位置插入。

当每个玩家(除了第一个到达的玩家)到达时,该玩家会获得舒适度,该舒适度等于顺时针相邻玩家和逆时针相邻玩家友好程度中较小的那个。第一个到达的玩家的舒适度为00

通过在最佳的到达顺序和圆圈中的位置选择,NN个玩家可以获得的最大总舒适度是多少?

约束条件

  • 输入中的所有值都是整数。
  • 2N2×1052 \leq N \leq 2 \times 10^5
  • 1Ai1091 \leq A_i \leq 10^9

输入

输入以以下格式从标准输入给出:

NN
A1A_1 A2A_2 \dots ANA_N

输出

打印最大总舒适度。


示例输入1

4
2 2 1 3

示例输出1

7

通过按照玩家4,2,1,34, 2, 1, 3的顺序到达,并按照图中所示在圆圈中插入,他们可以获得总舒适度为77

Figure

他们无法获得超过77的总舒适度,因此答案是77


示例输入2

7
1 1 1 1 1 1 1

示例输出2

6