15| 最大子段和

一、核心思路

利用前缀和进行预处理,再遍历前缀和数组,计算每个位置的最大子段和并动态更新。

二、代码实现

cpp 复制代码
typedef long long LL;
const int N = 2e5 + 10;
LL st[N], n;

int main()
{
	cin >> n;
	LL premin = 0; 
	LL ret = -1e10;
	for (int i = 1; i <= n; i++)
	{
		int x; cin >> x;
		st[i] = st[i-1] + x;
	}
	for (int i = 1; i <= n; i++)
	{
		ret = max(ret, st[i] - premin);
		premin = min(premin, st[i]);
	}
	cout << ret << endl;
	return 0;
 } 
相关推荐
chao1898446 小时前
基于 SPEA2 的多目标优化算法 MATLAB 实现
开发语言·算法·matlab
沪漂阿龙6 小时前
AI大模型面试题:支持向量机是什么?间隔最大化、软间隔、核函数、LinearSVC 全面拆解
人工智能·算法·支持向量机
難釋懷6 小时前
Redis数据结构-Set结构
数据结构·redis·bootstrap
little~钰7 小时前
倍增算法和ST表
算法
Cat_Rocky7 小时前
k8s-持久化存储,粗浅学习
java·学习·kubernetes
知识领航员8 小时前
蘑兔AI音乐深度实测:功能拆解、实测表现与适用场景
java·c语言·c++·人工智能·python·算法·github
薛定e的猫咪8 小时前
因果推理研究方向综述笔记
人工智能·笔记·深度学习·算法
AOwhisky8 小时前
虚拟化技术学习笔记
linux·运维·笔记·学习·虚拟化技术
一只机电自动化菜鸟8 小时前
一建机电备考笔记(33) 机电专业技术(起重技术-吊装方案)(含考频+题型)
经验分享·笔记·学习·职场和发展·课程设计