P1115 最大子段和(max()函数)

题目:P1115 最大子段和 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int n;
signed main(){
	std::ios::sync_with_stdio(false);
	std::cin.tie(NULL);
	cin>>n;
	int a[200020],b[200020];
//求最大值时初始化用INT_MIN,要不然会报错
	int ans=INT_MIN;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		if(i==1) b[i]=a[i];
		//如果一个数加上上一个数,总和减少,就单独取本身,如果总和增大,则取相加之后的数 
		else b[i]=max(a[i],b[i-1]+a[i]);
		//实时更新当前得到的最大序列和 
		ans=max(ans,b[i]);
	}
	cout<<ans;
	return 0; 
}

学到的:

  • 变量之间的灵活赋值
  • 求最大值函数的灵活应用
相关推荐
大头流矢31 分钟前
C++的类与对象·三部曲:初阶
开发语言·c++
AAA.建材批发刘哥40 分钟前
03--C++ 类和对象中篇
linux·c语言·开发语言·c++·经验分享
峥无2 小时前
《二叉搜索树:动态数据管理的利器,平衡树的基石》
开发语言·c++·二叉搜索树
CoderCodingNo2 小时前
【GESP】C++五级真题(数论, 贪心思想考点) luogu-B4070 [GESP202412 五级] 奇妙数字
开发语言·c++·算法
AAA.建材批发刘哥2 小时前
04--C++ 类和对象下篇
linux·c++·经验分享·青少年编程
stolentime2 小时前
洛谷P4417 [COCI 2006/2007 #2] STOL 题解
c++·coci
CoderCodingNo3 小时前
【GESP】C++五级真题(数论考点) luogu-P11961 [GESP202503 五级] 原根判断
开发语言·c++
-西门吹雪3 小时前
c++线程之标准库的并行算法研究
c++
KiefaC4 小时前
【C++11】包装器及其应用
开发语言·c++
福楠4 小时前
C++ STL | vector
开发语言·c++·算法