Pagini recente » Cod sursa (job #1455992) | Cod sursa (job #1214234) | Cod sursa (job #1097033) | Cod sursa (job #2984147) | Cod sursa (job #2394453)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
long long n, val;
long long global_max, max_so_far;
long long start_index, end_index, tmp_index;
int main()
{
f >> n;
f >> val;
global_max = val;
max_so_far = val;
start_index = 1;
end_index = 1;
tmp_index = 1;
for (int i = 1; i < n; i++) {
f >> val;
if (max_so_far + val < val) {
max_so_far = val;
tmp_index = i;
}
else {
max_so_far += val;
}
if (max_so_far > global_max) {
global_max = max_so_far;
start_index = tmp_index;
end_index = i;
}
}
g << global_max << " " << start_index + 1 << " " << end_index + 1 << "\n";
f.close();
g.close();
return 0;
}