#include <cstdio>
#define NMAX 6000007
#define in "ssm.in"
#define out "ssm.out"
using namespace std;
int n, nr, dp[2], poz[2], dmax, p1max, p2max;
int main()
{
freopen(in, "r", stdin);
freopen(out, "w", stdout);
scanf("%d", &n);
for(int i = 1; i<= n; ++i)
{
int line = i&1, update = (!line);
scanf("%d", &nr);
if(i == 1)
{
dp[line] = nr;
poz[line] = i;
dmax = nr;
p1max = i;
p2max = i;
continue;
}
if(dp[update] + nr >= nr)
{
dp[line] = dp[update]+nr;
poz[line] = poz[update];
if(dp[line] > dmax)
{
dmax = dp[line];
p1max = poz[line];
p2max = i;
}
continue;
}
else
{
dp[line] = nr;
poz[line] = i;
if(dp[line] > dmax)
{
dmax = dp[line];
p1max = poz[line];
p2max = i;
}
continue;
}
}
printf("%d %d %d\n", dmax, p1max, p2max);
return 0;
}