现在的位置: 首页 > 综合 > 正文

Maximum Subsequence Sum (25)

2017年12月22日 ⁄ 综合 ⁄ 共 455字 ⁄ 字号 评论关闭


//1007. Maximum Subsequence Sum 
#include<iostream>
#include<string>
using namespace std;

int input[10001];
int main()
{
	int n,i,j,sum,l,h,start,end;
	bool flag=0;
	sum=l=h=j=0;	
	cin>>n;
	for(i=0;i<n;i++)
	{
		cin>>input[i];
		if(input[i]>0)
			flag=1;
	}
	if(flag)
		for(i=0;i<n;i++)
		{
			if(j>=0)
			{
				j+=input[i];
				h=i;
			}
			else
			{
				j=input[i];
				l=h=i;
			}
			if(j>sum)
			{
				sum=j;
				start=l;
				end=h;
			}
		}
	else
	{
		sum=0;
		start=0;end=n-1;
		for(i=0;i<n;i++)
			if(input[i]==0)
			{
				start=end=i;
				break;
			}

	}
	cout<<sum<<" "<<input[start]<<" "<<input[end];
	return 0;
}

抱歉!评论已关闭.