c_cpp 最大总和使得没有两个元素相邻

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 最大总和使得没有两个元素相邻相关的知识,希望对你有一定的参考价值。

//https://www.geeksforgeeks.org/maximum-sum-such-that-no-two-elements-are-adjacent/
#include <iostream>
using namespace std;

int main() {
    int n;
    cin>>n;
    int a[n];
    for (int i=0;i<n;i++)
        cin>> a[i];
    int inc=a[0], exc=0, ex;

    for (int i=1;i<n;i++) {
        ex= (inc>exc)?inc:exc;

        inc= exc + a[i];
        exc= ex;
    }
    inc>exc?cout<<inc:cout<<exc;
}

以上是关于c_cpp 最大总和使得没有两个元素相邻的主要内容,如果未能解决你的问题,请参考以下文章

java 查找没有相邻元素的子序列的最大总和

非相邻值的最大总和

c_cpp 检查数组中是否存在两个元素,其总和等于数组其余部分的总和

数组中的最大总和,使得可以在 5 个元素中选择最多 2 个连续的元素

求数组中 n 个元素的最大和,使得相邻的元素不超过 k 个

在数组中找到两个总和最小的非后续元素