#include <bits/stdc++.h>
using namespace std;
int a[5005];
long long dp[5005];
int st[5005];
long long sum[5005];
int main() {
  int n;
  while (cin >> n) {
    for (int i = 1; i <= n; i++) {
      cin >> a[i];
      sum[i] = sum[i - 1] + a[i];
    }
    int d0, d1, d2;
    long long res = 0;
    for (int i = 1; i <= n + 1; i++) {
      memset(dp, 0, sizeof dp);
      memset(st, 0, sizeof st);
      int s = -1, e = -1;
      long long mx = 0;
      for (int j = i; j <= n; j++) {
        if (j > 0 && dp[j - 1] > 0) {
          dp[j] = dp[j - 1] + a[j];
          st[j] = st[j - 1];
        } else {
          dp[j] = a[j];
          st[j] = j;
        }
        if (dp[j] > mx) {
          e = j;
          s = st[j];
          mx = dp[j];
        }
      }
      long long temp;
      if (i == n + 1) {
        temp = sum[i - 1];
        s = n + 1;
        e = n;
      } else if (s == -1 && e == -1) {
        temp = sum[i - 1] - (sum[n] - sum[i - 1]);
        s = n + 1;
        e = n;
      } else
        temp = sum[i - 1] - (sum[s - 1] - sum[i - 1]) + (sum[e] - sum[s - 1]) -
               (sum[n] - sum[e]);
      if (temp >= res) {
        res = temp;
        d0 = i - 1;
        d1 = s - 1;
        d2 = e;
      }
    }
    printf("%d %d %d\n", d0, d1, d2);
  }
  return 0;
}
