2 5 6 -1 5 4 -7 7 0 6 -1 1 -6 7 -5
Case 1: 14 1 4 Case 2: 7 1 6
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<iostream>
using namespace std;
int main ()
{
    int T,n,a[100105];
    int i,j,sum,max,s,e,t;
    cin>>T;
    for(i=1;i<=T;i++)
    {
        cin>>n;
        for(j=0;j<n;j++)
           cin>>a[j];
        sum=a[0];
        max=a[0];
        t=0;
        s=0;
        e=0;
        for(j=1;j<n;j++)
        {
           if(sum<0)
           {
               sum=0;
               t=j;
           }
           sum+=a[j];
           if(sum>max)
            {
                max=sum;
                e=j;
                s=t;
            }
        }
        cout<<"Case"<<" "<<i<<":"<<endl;
        cout<<max<<" "<<s+1<<" "<<e+1<<endl;
        if(i<T)
            cout<<endl;
    }
         return 0;
}
hdu 1003 Max Sum,布布扣,bubuko.com
原文:http://blog.csdn.net/fyxz1314/article/details/38358573