Module: 线性枚举


Problem

4 /5


和谐序列精简版

Problem

Flatland大学的一系列讲座专门研究序列。

教授称一个整数序列 \(a_1, a_2, ..., a_n\) 如果除了\(a_1\) 和\(a_n\),等于相邻的和:  \(a_2 = a_1 + a_3, a_3=a_2+a_4, ..., a_{n-1}=a_{n-2}+a_n\)。例如,序列 [1,2,1,–1]   是调和的,因为 2=1+1,并且 1=2+(–1)。

考虑等长序列: \(A=[a_1,a_2, ... a_n]\)   和\(B=[b_1,b_2, ... b_n]\)。这些序列之间的距离将称为值 \(d(A,B)= |a_1-b_1|+|a_2-b_2|+...+|a_n-b_n |\)  。例如, \(d([1,2,1,–1][1,2,0,0])=|1–1|+|2–2 | ++|1–0|+|–1–0|=0+0+1+1=2 \)

讲座结束时,教授在黑板上写下了一个n个整数的序列\(B=[b_1,b_2, ... b_n]\)并提问学生找到和谐序列 \(A=[a_1,a_2, ... a_n]\) 这样 \( d( A, B)\) 是最小的。为了让他自己更容易检查,教授要求你只写下所需的最小距离作为答案 \(d(A,B)\)  .

要求编写一个程序,给定一个序列 B,确定在距序列 B 的最小距离处存在调和序列 A。

输入
输入文件的第一行包含整数 n –序列中元素的数量(\(3 \le n \le 500\))。

第二行包含n个整数 \(b_1, b_2, …, b_n (–100 \le b_i \le 100 )\) .

印记
输出文件必须包含一个整数:从输入文件中的序列到谐波序列的最小可能距离。
例子
<头> <正文>
# 输入 输出
1 4
1 2 0 0
2