牛客 最大序列和 DP

分解思想:dp[i]表示以a[i]结尾的最大连续序列和
最大序列和

cpp 复制代码
#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int INF = 1e10 + 10;

int main()
{
	ll n;
	while(cin>>n){
		ll ans = -INF;
		vector<ll>dp(n + 1, 0);
		for(int i = 0; i < n; i ++ ) cin>>dp[i];
		for(int i = 1; i < n; i ++ ){
			dp[i] = max(dp[i], dp[i - 1] + dp[i]);
			ans = max(ans, dp[i]);
		} 
		cout<<ans<<endl;
	}
	return 0;
}
相关推荐
满分观察网友z几秒前
从一次手滑,我洞悉了用户输入的所有可能性(3330. 找到初始输入字符串 I)
算法
YuTaoShao22 分钟前
【LeetCode 热题 100】73. 矩阵置零——(解法二)空间复杂度 O(1)
java·算法·leetcode·矩阵
Heartoxx23 分钟前
c语言-指针(数组)练习2
c语言·数据结构·算法
大熊背37 分钟前
图像处理专业书籍以及网络资源总结
人工智能·算法·microsoft
满分观察网友z41 分钟前
别怕树!一层一层剥开它的心:用BFS/DFS优雅计算层平均值(637. 二叉树的层平均值)
算法
杰克尼2 小时前
1. 两数之和 (leetcode)
数据结构·算法·leetcode
YuTaoShao3 小时前
【LeetCode 热题 100】56. 合并区间——排序+遍历
java·算法·leetcode·职场和发展
二进制person7 小时前
Java SE--方法的使用
java·开发语言·算法
OneQ6667 小时前
C++讲解---创建日期类
开发语言·c++·算法
JoJo_Way7 小时前
LeetCode三数之和-js题解
javascript·算法·leetcode