//0x80000000表示最小值-2147483648,考虑到全部输入为负数
int nGreatestSum = 0x80000000;
for(int i = 0; i < nLength; ++i)
{
if(nCurSum <= 0)
nCurSum = pData[i];
else
nCurSum += pData[i];
if(nCurSum > nGreatestSum)
nGreatestSum = nCurSum;
}
return nGreatestSum;
}
int fun(int a[],int size)
{
int sum=0;
int max=0;
for(int i=0;i<size;i++)
for(int j=i;j<size;j++)
{
for(int k=i;k<=j;k++)
{
sum+=a[k];
}
if(sum>max)
max=sum;
sum=0;
}
return max;
}
int main()
{
int a ={1, -2, 3, 10, -4, 7, 2, -5};
// int max1=fun(a,8);
int max=FindGreatestSumOfSubArray(a,8);
cout<<max<<endl;
return 0;
}