[蓝桥杯 2022 国 C] 斐波那契数组

题目描述

如果数组 $A = (a_0,a_1,\cdots,a_{n − 1})$ 满足以下条件,就说它是一个斐波那契数组: 1. $n>2$。 2. $a_0=a_1$。 3. 对于所有的 $i\ge2$ 都有 $a_i=a_{i-1}+a_{i-2}$。 现在,给出一个数组 $A$,你可以执行任意次修改,每次修改将数组中的某个位置的元素修改为一个大于 $0$ 的整数。请问最少修改几个元素之后,数组 $A$ 会变成一个斐波那契数组。

输入输出格式

输入格式


输入的第一行包含一个整数 $n$,表示数组 $A$ 中的元素个数。 第二行包含 $n$ 个整数 $a_0,a_1,\cdots,a_{n−1}$,相邻两个整数之间用一个空格分隔。

输出格式


  输出一行包含一个整数表示最少需要修改数组 $A$ 中的几个元素之后,数组 $A$ 可以变为一个斐波那契数组。

输入输出样例

输入样例 #1

5
1 2 2 4 8

输出样例 #1

3

说明

**【样例说明】** 将原数组修改为 $(1,1,2,3,5)$,最少修改三个元素变成了一个斐波那契数组。 **【评测用例规模与约定】** 对于所有评测用例, $3 ≤ n ≤ 10^5$,$1 ≤ a_i ≤ 10^6$。 蓝桥杯 2022 国赛 C 组 E 题。