题目 90分,第一个点wa不知道为啥
#include <bits/stdc++.h>
using namespace std;
int n,arr[100005],brr[100005],ans;
int s1(){
int sum=0;
arr[1]=arr[2];
sum++;
for(int i=3;i<=n;i++){
if(arr[i]!=arr[i-1]+arr[i-2]){
sum++;
arr[i]=arr[i-1]+arr[i-2];
}
}
return sum;
}
int s2(){
int sum=0;
brr[2]=brr[1];
sum++;
for(int i=3;i<=n;i++){
if(brr[i]!=brr[i-1]+brr[i-2]){
sum++;
brr[i]=brr[i-1]+brr[i-2];
}
}
return sum;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>arr[i];
brr[i]=arr[i];
}
if(arr[1]==arr[2]){
for(int i=3;i<=n;i++){
if(arr[i]!=arr[i-1]+arr[i-2]){
ans++;
arr[i]=arr[i-1]+arr[i-2];
}
}
}else{
ans=min(s1(),s2());
}
cout<<ans;
return 0;
}