文章

60

粉丝

361

获赞

43

访问

527.7k

头像
打卡
P1334 浙江大学/中国矿业大学机试题
发布于2021年1月27日 10:48
阅读数 7.8k

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e4+5;
int a[maxn],b[maxn];
long long maxx;
int main()
{
	int n;
	while(cin>>n)
	{
		if(n==0)break;
		for(int i=0;i<n;i++)
			cin>>a[i];
		int maxx=a[0],beg=0,endd=0,temp=0;
		b[0]=a[0];
		for(int i=1;i<n;i++)
		{
			if(b[i-1]+a[i]>a[i])
			{
				b[i]=b[i-1]+a[i];
			}
			else
			{
				b[i]=a[i];
				temp=i;
			}
			if(maxx<b[i])
			{
				beg=temp;
				endd=i;
				maxx=b[i];
			}
		}
		if(maxx<0)
			cout<<0<<" "<<a[0]<<" "<<a[n-1]<<endl;
		else
			cout<<maxx<<" "<<a[beg]<<" "<<a[endd]<<endl;
	}
	return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发