最小化数组的无序系数(差的绝对值之和)

minimizing disorder coefficient of an array (sum of absolute values of differences)

我遇到了波兰奥林匹克竞赛的一个问题: 每个数组 a1,a2,a3 ... a4 都有它的无序系数 K,等于 |a[1]-a[2]| + |a[2]- a[3]| + |a[3]-a[4]| ... |a[n-1] -a[n]|。对于每个元素,我们应该计算通过与数组的任何其他元素交换位置可以获得的最小 K。 示例:给定一个数组 7 4 5 2 5。 这个数组的初始无序系数是 10 = |7-4|+|4-5|+|5-2|+|2-5| 第一个元素的最小无序系数在与第四个元素交换后得到:|2-4|+|4-5|+|5-7|+|7-5| = 7。我们需要为数组的所有元素计算这个。复杂度应该是 O(nlogN).

只需对您的数组进行排序并计算此排序数组的无序系数。是数组的MDC。

它是如何工作的。 您需要将差异最小的元素放在一起。排序会给出这个结果。

也在努力证明这个理论:)明天更新