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;
 } 
相关推荐
luj_17684 分钟前
毒素驱动的生物自毁机制探析
服务器·c语言·开发语言·经验分享·算法
某林2127 分钟前
机器人收不住、转不动?执行器死区的原理与三层补偿设计
前端·网络·c++·架构·机器人
一水鉴天17 分钟前
问题分类的三元组映射体系与求解方法论 20260901(千问)
人工智能·算法·机器学习
breeze jiang18 分钟前
LangChain Memory 实战:用 InMemoryChatMessageHistory 管理多轮对话
前端·算法·langchain
冬夜戏雪42 分钟前
学习日记-LRU缓存成员变量,入参day1
学习
深念Y1 小时前
Windows 11 工具链部署与 SSH 踩坑笔记
windows·笔记·ssh
Sunshing151 小时前
非自治连续系统稳定性定义与定理判据
笔记·学习
苏灵凯1 小时前
Codex 官网前端可以抄吗?从设计到实现的技术拆解
笔记·ai·agent·codex·deepseek
andrsted1 小时前
老师可以用小程序在线整理题库、课堂检测和错题集
学习·微信小程序·小程序·学习方法
zhangrelay2 小时前
手机-笔电-等数码产品-电池健康的一些数据-2026
笔记·学习·锂电池