#include <fstream>
#include <vector>
#include <limits>
int main()
{
std::ifstream in("ssm.in");
std::ofstream out("ssm.out");
int N;
in >> N;
std::vector<int> V(N + 1);
for (auto &elem : V)
in >> elem;
int first_index, last_index;
long long sum = 0, sum_sol;
sum_sol = std::numeric_limits<long long>::min();
for (auto i = 0; i < N; i++) {
if (sum < 0) {
sum = 0;
first_index = i;
}
sum += V[i];
if (sum > sum_sol) {
sum_sol = sum;
last_index = i;
}
}
out << sum_sol << " " << first_index + 1 << " " << last_index + 1 << '\n';
return 0;
}