解题代码
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int a[n];
int i;
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
int sum=0,max=-1,minindex=0,maxindex=n-1;
for(i=0;i<n;i++){
sum+=a[i];
if(sum>max){
max=sum;
maxindex=i;
}
if(sum<0){
sum=0;
}
}
sum=max;
for(i=maxindex;i>=0;i--){
sum-=a[i];
if(sum==0){
minindex=i;
break;
}
}
for(i=minindex-1;i>=0;i--){
sum-=a[i];
if(sum==0){
minindex=i;
}
}
if(max<0){
max=0;
}
printf("%d %d %d",max,a[minindex],a[maxindex]);
return 0;
}