#L2650. 「POI2007 R1」树 Trees

    ID: 5122 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>动态规划状态设计优化数据结构线段树预处理前后缀分解绝对值

「POI2007 R1」树 Trees

题目描述

nn 棵树的高度分别为 h1,h2,,hnh_1, h_2, \ldots, h_n。定义其不整齐程度为 $\lvert h_1 - h_2 \rvert + \lvert h_2 - h_3 \rvert + \ldots + \lvert h_{n-1} - h_n \rvert$。对其中每一棵树,求其与另一棵树交换(也可以不交换)后不整齐程度的最小值。

输入格式

第一行一个整数 nn (1n500001 \le n \le 50\,000),表示树的个数。

接下来一行有 nn 个整数 hih_i (1hi1000000001 \le h_i \le 100\,000\,000),表示树的高度。

输出格式

输出 nn 行,每行一个整数,表示将第 ii 棵树与另一棵树交换(也可以不交换)后不整齐程度的最小值。

样例 1

输入

5
7 4 5 2 5

输出

7
7
8
7
7

样例 2

输入

5
1 2 3 4 5

输出

4
4
4
4
4

样例解释

第一个样例中最小的不整齐程度为 77,可以交换树 1,41,42,52,54,54,5 实现,因此对 1,2,4,51,2,4,5 这四棵树来说答案是 77,只有对第 33 棵树来说答案是 88,可以通过交换树 3,43,4 来实现。

第二个样例中无论交换哪两棵树都会使答案变大,因此最优方案都是不交换,不整齐程度均为 44