長さnの配列は正と負があり,要素の和が最大のサブ配列を見つける

647 ワード

//   n    ,          
#include 
void main()
{
	void MaxSum(int array[],int length);
	int a[10]={2,1,-9,-2,8,6,-3,3,2,-16};
	MaxSum(a,10);
}
void MaxSum(int array[],int length)
{//i1                ,count1          
	int i,i1,count=0,count1=0,NowSum=0,Max=0;
	if(array==NULL || length==0)
		return;
	for(i=0;iMax)
		{
			count1=count;
			i1=i;
			Max=NowSum;
		}
	}
	if(Max==0)
	{//         ,         
		Max=array[0];
		for(i=1;iMax)
				Max=array[i];
		}
	}
	printf("Max=%d,  %d     ,   %d        。
",Max,i1-count1+2,count1); }