网站开发主要有两个阶段,广东建设中标网站,next.js做纯静态网站,自媒体平台注册入口大盗阿福
题意#xff1a;
长度为n的数组a#xff0c;不能取连续的数#xff0c;问所能取的最大值是多少
题解#xff1a;
设dp[i][0]表示第i个数不选#xff0c;dp[i][1]表示第i个数选 如果第i个数不选#xff0c;那么第i-1个数可以选也可以不选#xff0c;我们取最…大盗阿福
题意
长度为n的数组a不能取连续的数问所能取的最大值是多少
题解
设dp[i][0]表示第i个数不选dp[i][1]表示第i个数选 如果第i个数不选那么第i-1个数可以选也可以不选我们取最大 如果第i个数选那么第i-1只能不选 dp[i][0]max(dp[i-1][1],dp[i-1][0]);dp[i][1]dp[i-1][0]a[i];代码
#includebits/stdc.h
typedef long long ll;
using namespace std;
inline int read(){int s0,w1;char chgetchar();while(ch0||ch9){if(ch-)w-1;chgetchar();}while(ch0ch9) ss*10ch-0,chgetchar();//s(s3)(s1)(ch^48);return s*w;
}
const int maxn1e59;
int a[maxn],dp[maxn][3];
int main()
{int n;int t;cint;while(t--){cinn;for(int i1;in;i)cina[i];memset(dp,0,sizeof(dp));for(int i1;in;i){dp[i][0]max(dp[i-1][1],dp[i-1][0]);dp[i][1]dp[i-1][0]a[i];}coutmax(dp[n][0],dp[n][1])endl;}}
/*
dp[i][0]max(dp[i-1][1],dp[i-1)[0]);
dp[i][1]dp[i-1][0]a[i];
*/