#include <bits/stdc++.h>


using namespace std;

const int MAXN = 1e4 + 10;

int arr[MAXN];
int dp[MAXN];

int main() {
    int n;
    while (scanf("%d", &n) != EOF) {
        if (n == 0) {//当K为0时,输入结束,该用例不被处理。
            break;
        }
        //输入
        for (int i = 0; i < n; ++i) {
            scanf("%d", &arr[i]);
        }
        int maximum = INT_MIN;
        int start;
        int last;
        int head;//输出时第一个
        int tail;//输出时最后一个
        for (int i = 0; i < n; ++i) {//找连续的正数出现。。。
            if (i == 0 || dp[i - 1] < 0) {
                dp[i] = arr[i];
                start = arr[i];
                last = arr[i];
            } else {//大于零的,累加
                dp[i] = dp[i - 1] + arr[i];
                last = arr[i];
            }
            if (maximum < dp[i]) {
                maximum = dp[i];
                head = start;
                tail = last;
            }
        }
        if (maximum < 0) {//当K为0时,输入结束,该用例不被处理。
            maximum = 0;
            head = arr[0];
            tail = arr[n - 1];
        }
        printf("%d %d %d\n", maximum, head, tail);
    }
    return 0;
}