题解 | #连续子数组最大和#

连续子数组最大和

http://www.nowcoder.com/practice/1718131e719746e9a56fb29c40cc8f95

#include<stdio.h>
#include<string.h>
//就老老实实的写,求稳,有精力再优化
long long max(long long a,long long b)
{
    return a>b?a:b;
}
int main()
{
    int n;
    
    while(scanf("%d",&n)!=EOF)
    {
        long long ret[200001]={0};
        long long dp[200001];
        long long sum=-1e9;
        for(int i=1;i<=n;i++)
        {
            scanf("%lld ",&ret[i]);
        }
        dp[0]=-1e9;
        for(int i=1;i<=n;i++)
        {
            dp[i]=max(dp[i-1]+ret[i],ret[i]);
            sum=max(sum,dp[i]);
        }
        printf("%lld",sum);
    }
    return 0;
}
全部评论

相关推荐

10-05 23:02
东北大学 Java
我说句实话啊:那时候看三个月培训班视频,随便做个项目背点八股,都能说3 40w是侮辱价
点赞 评论 收藏
分享
ArisRobert:统一解释一下,第4点的意思是,公司按需通知员工,没被通知到的员工是没法去上班的,所以只要没被通知到,就自动离职。就是一种比较抽象的裁员。
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务