题解 | 小苯的最大和
小苯的最大和
https://www.nowcoder.com/practice/c88383720c18407197547c174d902315
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 2e5 + 10;
ll dp[N];
ll a[N];
int main(){
int t; cin >> t;
while(t--){
int n; cin >> n;
for(int i=1 ; i <= n ; i++){
cin >> a[i];
}
for(int i=1 ; i <= n ; i++){
dp[i] = dp[i-1]+a[i];
if(i >= 2){
dp[i] = max(dp[i],dp[i-2]);
}
if(i >= 3){
dp[i] = max(dp[i],dp[i-3]);
}
}
cout << dp[n] << endl;
}
return 0;
}
