rt,为什么这种作法会出错。
#include<bits/stdc++.h>
using namespace std;
long long n,a[100005],f[2][100005];
int main(){
cin >> n ;
for(int i=1;i<=n;i++) cin >> a[i] ;
f[0][1]=a[1];
for(int i=3;i<n;i++) f[0][i]=max(f[0][i-2]+a[i],f[0][i-1]);
for(int i=2;i<=n;i++) f[1][i]=max(f[1][i-2]+a[i],f[1][i-1]);
cout << max(f[0][n-1],f[1][n]) ;
return 0;
}