Pagini recente » Cod sursa (job #2820089) | Cod sursa (job #687966) | Cod sursa (job #2183585) | Cod sursa (job #654322) | Cod sursa (job #3344586)
#include <iostream>
#define NMAX 6000000U
int main()
{
int n;
int start_i, end_i, max_sum;
freopen("ssm.in", "r", stdin);
freopen("ssm.out", "w", stdout);
std::cin >> n;
start_i = 0;
end_i = 0;
max_sum = 0;
for (int x, sum = 0, i = 0, j = 0; j < n; ++j) {
std::cin >> x;
if (j < n - 1) {
if (sum + x < 0) {
if (sum > max_sum) {
start_i = i;
end_i = j;
max_sum = sum;
}
sum = 0;
i = j + 1;
} else {
sum += x;
}
} else {
if (x >= 0) {
sum += x;
start_i = i;
end_i = j + 1;
max_sum = sum;
} else {
start_i = i;
end_i = j;
max_sum = sum;
}
}
}
std::cout << max_sum << ' ' << start_i + 1 << ' ' << end_i << "\n";
return 0;
}