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

连续子数组最大和

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;
}
全部评论

相关推荐

06-19 19:06
门头沟学院 Java
码农索隆:别去东软,真学不到东西,真事
点赞 评论 收藏
分享
代码飞升:别用口语,后端就写后端,前端就写前端,最后别光后悔
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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