社区讨论

环状最大字段和

学术版参与者 3已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@lo365eoz
此快照首次捕获于
2023/10/24 01:25
2 年前
此快照最后确认于
2023/10/24 01:25
2 年前
查看原帖
环状最大字段和可以这么写吗,求hack
CPP
#include <bits/stdc++.h>
using namespace std;
int n,a[200001],max1=-9999999,s=1,sum,ms=-999;
int main()
{
	cin>>n;
	for(int i=1;i<=n;++i)
	{
		cin>>a[i];
		a[i+n]=a[i];
	}
	for(int i=1;i<=n*2;++i)
	{
		if(s+n==i)
		{
			break;
		}
		sum+=a[i];
		if(sum>max1)
		{
			max1=sum;
			ms=s;
		}
		if(sum<0)
		{
			sum=0;
			s=i+1;
		}
	}
	cout<<max1;
}

回复

5 条回复,欢迎继续交流。

正在加载回复...