#arc119e. [arc119_e]Pancakes

[arc119_e]Pancakes

问题陈述

我们有一个"煎饼塔",是由 NN 个煎饼堆叠而成。初始时,从顶部往下数第 ii 个煎饼(1iN1 \leq i \leq N)的大小为 AiA_i。厨师 Takahashi 最多可以执行以下操作一次:

  • 选择整数 llrr (1l<rN1 \leq l \lt r \leq N) ,将第 ll 到第 rr 个煎饼翻转,改变顺序。

找出操作完成后(或者未完成时),塔的最小可能丑陋度,如下所定义:

丑陋度是相邻煎饼大小差值的总和;

即值 $|A^{\\prime}_1 - A^{\\prime}_2| + |A^{\\prime}_2 - A^{\\prime}_3| + \cdots + |A^{\\prime}_{N-1} - A^{\\prime}_N|$,其中 AiprimeA^{\\prime}_i 是从顶部往下数第 ii 个煎饼的大小。

约束条件

  • 2N3000002 \leq N \leq 300000
  • 1Ai1091 \leq A_i \leq 10^9
  • 输入中的所有值都是整数。

输入

输入是标准输入格式的数据,具体格式如下:

NN A1A_1 A2A_2 \cdots ANA_N

输出

打印出塔的最小可能丑陋度。


示例输入 1

5
7 14 12 2 6

示例输出 1

17

如果我们选择操作 l=2l = 2r=5r = 5,那么煎饼的大小从顶部往下数依次为 7,6,2,12,147, 6, 2, 12, 14

这里的丑陋度为 $|7-6| + |6-2| + |2-12| + |12-14| = 1 + 4 + 10 + 2 = 17$。这是可能的最小值;无法得到更小的丑陋度。


示例输入 2

3
111 119 999

示例输出 2

888

在这个示例中,不执行操作可以使丑陋度最小。

在这种情况下,煎饼的大小从顶部往下数依次为 111,119,999111, 119, 999,丑陋度为 111119+119999=8+880=888|111-119| + |119-999| = 8 + 880 = 888


示例输入 3

6
12 15 3 4 15 7

示例输出 3

19

如果我们选择操作 l=3l = 3r=5r = 5,那么煎饼的大小从顶部往下数依次为 12,15,15,4,3,712, 15, 15, 4, 3, 7

这里的丑陋度为 $|12-15| + |15-15| + |15-4| + |4-3| + |3-7| = 3 + 0 + 11 + 1 + 4 = 19$,这是可能的最小值。


示例输入 4

7
100 800 500 400 900 300 700

示例输出 4

1800

如果我们选择操作 l=2l = 2r=4r = 4,那么煎饼的大小从顶部往下数依次为 100,400,500,800,900,300,700100, 400, 500, 800, 900, 300, 700,丑陋度为 18001800


示例输入 5

10
535907999 716568837 128214817 851750025 584243029 933841386 159109756 502477913 784673597 603329725

示例输出 5

2576376600