题目背景
翻译自 ROIR 2016 D2T4。
题目描述
如果一个整数数列 a1,a2,…,ana1,a2,…,an 满足其中每个数(除了 a1 和 an)等于其相邻两个数的和,即 a2=a1+a3,a3=a2+a4,…,an−1=an−2+an,那么我们称这个序列为和谐数列。
例如,数列 [1,2,1,−1][1,2,1,−1] 是和谐数列,因为 2=1+12=1+1,且 1=2+(−1)1=2+(−1)。
现在考虑两个相同长度的数列 A=[a1,a2,…,an]和 B=[b1,b2,…,bn]。我们定义它们之间的距离为:
d(A,B)=∣a1−b1∣+∣a2−b2∣+⋯+∣an−bn∣
例如,d([1,2,1,−1],[1,2,0,0])=∣1−1∣+∣2−2∣+∣1−0∣+∣−1−0∣=0+0+1+1=2
现有一个数列 B=[b1,b2,…,bn]B=[b1,b2,…,bn],需要找出一个和谐数列 A=[a1,a2,…,an],使得 d(A,B)d(A,B) 最小。你只需要求出 d(A,B) 的最小值即可。
输入格式
第一行输入一个整数&nb
订阅专栏 解锁全文
619

被折叠的 条评论
为什么被折叠?



