#include <stdio.h>
void MaxSubsseqSum1(int A[], int N) {
int ThisSum = 0, MaxSum = -1;
int start,end;
int temp = 0;
for (int i = 0; i<N; i++) {
ThisSum += A[i];
if (ThisSum>MaxSum){
MaxSum = ThisSum;
start = temp;
end = i;
} else if (ThisSum<0) {
ThisSum = 0;
temp = i+1;
}
}
if (MaxSum>=0) {
printf("%d %d %d\n",MaxSum, A[start], A[end]);
} else {
printf("0 %d %d\n", A[0], A[N-1]);
}
}
int main(void) {
int N;
scanf("%d",&N);
int A[N];
for (int i = 0; i<N;i++) {
scanf("%d",&A[i]);
}
MaxSubsseqSum1(A, N);
}