斐波那契数组
如果数组 A=(a0,a1,⋯,an−1) 满足以下条件, 就说它是一个斐波那契数 组:
n≥2;
a0=a1
对于所有的 i(i≥2), 都满足 ai=ai−1+ai−2 。
现在, 给出一个数组 A, 你可以执行任意次修改, 每次修改将数组中的某 个位置的元素修改为一个大于 0 的整数。请问最少修改几个元素之后, 数组 A 会变成一个斐波那契数组。
输入的第一行包含一个整数 n, 表示数组 A 中的元素个数。
第二行包含 n 个整数 a0,a1,⋯,an−1, 相邻两个整数之间用一个空格分隔。
输出一行包含一个整数表示最少需要修改数组 A 中的几个元素之后, 数组 A 可以变为一个斐波那契数组。
5
1 2 2 4 8
3
将原数组修改为 (1,1,2,3,5), 最少修改三个元素变成了一个斐波那契数组。
对于所有评测用例, 2≤n≤105,1≤ai≤106 。