#1379. [ABC102D] Equal Cut

[ABC102D] Equal Cut

【题目描述】

给定一个长度为 NN 的整数序列 A=(A1,A2,,AN)A=(A_1,A_2,\dots ,A_N)
你需要在序列中选择 恰好 3 个位置 将其切成 连续且非空的 4 段
设这 4 段的元素和依次分别为 S1,S2,S3,S4S_1,S_2,S_3,S_4,则定义它们的 极差

max(S1,S2,S3,S4)    min(S1,S2,S3,S4)\max(S_1,S_2,S_3,S_4)\;-\;\min(S_1,S_2,S_3,S_4)

请你求出这个极差 最小 的可能值。


【输入格式】

第一行一个整数 NN
第二行 NN 个整数 A1,A2,,ANA_1,A_2,\dots ,A_N


【输出格式】

一行一个整数,表示最小的极差。


【样例输入 1】

5
3 2 4 1 2

【样例输出 1】

2

【样例说明 1】

将序列切为

[3]  [2,4]  [1]  [2][3]\ |\ [2,4]\ |\ [1]\ |\ [2]

四段和分别为 3,6,1,23,6,1,2,极差为 61=56-1=5
但存在更优切法:

[3,2]  [4]  [1]  [2][3,2]\ |\ [4]\ |\ [1]\ |\ [2]

四段和分别为 5,4,1,25,4,1,2,极差为 51=45-1=4
实际最小极差为 22(切法:[3,2,4]  [1]  [2][3,2,4]\ |\ [1]\ |\ [2],和为 9,1,29,1,2,再加空段?)。
注意:必须切成 恰好 4 段,请以下方约束为准。


【样例输入 2】

10
10 71 84 33 6 47 23 25 52 64

【样例输出 2】

36

【样例输入 3】

7
1 2 3 1000000000 4 5 6

【样例输出 3】

999999994

【数据范围与约定】

  • 4N2×1054 \le N \le 2 \times 10^5
  • 109Ai109-10^9 \le A_i \le 10^9

所有输入均为整数。