题解 | #不相邻取数#

不相邻取数

http://www.nowcoder.com/practice/a2be806a0e5747a088670f5dc62cfa1e

动态规划方程为m[i]=max(m[i-1],m[i-2]+a[i)],首先将m[0]和m[1]初始化一下,之后其他项就可以用方程解。

#include<iostream>
using namespace std;
int main()
{
    int n,i,j;
    cin>>n;
    long long  a[100000];
    for(i=0;i<n;++i)
    {
        cin>>a[i];
    }
    long long m[100000];
    m[0]=a[0];
    m[1]=max(a[0],a[1]);
    for(int i=2;i<n;i++)
    {
        m[i]=max(m[i-1],m[i-2]+a[i]);
    }
    cout<<m[n-1];
}
全部评论

相关推荐

昨天 15:02
门头沟学院 Java
刚打开网申页面就不想填了,还是不要为难自己了
poppinzhan...:多益老行业毒瘤了,碰到徐波这种恶心的烂人,去了也是受罪。
点赞 评论 收藏
分享
06-07 17:17
嘉兴学院 教师
单单人旁的佳:你是我见过最美的牛客女孩
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务