动规之最大字段和

最大字段和是动规的一个分支,下面我就来讲一讲。

1.简介

最大字段和是一种选出数组其中连续且非空的一段使得这段和最大的一种算法。一共只有一步:动规

2.动规

for (int i = 1; i <= n; i++){
	cin >> a[i];
}

int maxn = -1e9;

for (int i = 1; i <= n; i++){
	dp[i] = max(dp[i-1]+a[i], a[i]);
    maxn=max(maxn,dp[i]);
}

cout << maxn << endl;

这就是最大字段和的全部了,点个赞呗。

c++算法大全 文章被收录于专栏

本专栏收集了c++大部分基础算法,附有简介和代码。

全部评论
好兄弟,这种学习模式没毛病,加油!
1 回复 分享
发布于 09-02 12:47 重庆
其实贪心也可以 如果a[i]<0那么sum清0,否则就加上a[i],最后在用一个ans记录sum的最大值,最后输出sum
点赞 回复 分享
发布于 09-02 13:45 北京

相关推荐

08-21 09:59
已编辑
门头沟学院 golang
事故起因:&nbsp;需求需要聚合库中所有组件,编码完成后发现es索引中未添加规范器,导致Nginx、NGINX和nginx等被多次统计,但是右边列表查询是不区分大小写的,此时楼主想着直接给索引加上规范器即可(产品需求忽略大小写),便参照其他同事的迁移索引脚本完成了编写并在本地环境完成测试事故产生编写的迁移脚本完全是参考同事编写的,相关的字段直接使用索引的json文件编写,没有考虑此索引存着特殊性,含有很多_source字段,导致不在json文件中的所有字段丢失,导致客户部分用到_source的数据丢失,但是本地测试时没有用到相关内容,也忘记告知测试导致本次事故产生解决方案其实很简单,因为只是加个规范器并不涉及数据修改什么的,直接把原值复制就行,循环赋值指定字段导致数据丢失事故总结第一时间知道是由于自己的迁移脚本造成的,人真的一下子懵了,可能这就是职场新人吧,那一下午需求基本没写出来,脑子里全是寄了,可以提前毕业了啥的,整个人陷入了一种死锁状态。晚上邮件通知后,导师完成版本修复开始着手给客户补数据,两个后端+一个架构师+产品经理&nbsp;从18.30开始补救&nbsp;到至少凌晨1点吧(导师让我先走&nbsp;不然第二天没人处理问题)&nbsp;,我最后一次询问是1:26分&nbsp;让我先睡,还在修复中,晚上梦里全是他们在补救什么的,基本没睡着,一会儿拿手机看有没有说修复完成事故感想这次事故真的给了很大一个教训,犯得第一个重大错误是没有理清楚迁移方案,直接参照别人的完成编写,没有自己的思考第二&nbsp;第一次感觉到自己技术不足的严重性,这次事故最无力的是我的错误导致他们来帮我善后,我帮不上任何忙,真的很无力希望大家以我为戒吧,千万要先自己考虑好方案,涉及数据的工作一定要在cr时让别人好好审审,一定要和测试沟通
职场捅娄子大赛
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
4
3
分享

创作者周榜

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