Pagini recente » Cod sursa (job #2014138) | Cod sursa (job #396831) | Cod sursa (job #692941) | Cod sursa (job #776497) | Cod sursa (job #3339239)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main() {
int n;
fin >> n;
long long x;
long long current_sum = 0;
long long best_sum = LLONG_MIN;
int current_l = 1;
int best_l = 1, best_r = 1;
for (int i = 1; i <= n; i++) {
fin >> x;
if (current_sum + x < x) {
current_sum = x;
current_l = i;
} else {
current_sum += x;
}
if (current_sum > best_sum) {
best_sum = current_sum;
best_l = current_l;
best_r = i;
}
else if (current_sum == best_sum) {
if (current_l < best_l || (current_l == best_l && i < best_r)) {
best_l = current_l;
best_r = i;
}
}
}
fout << best_sum << " " << best_l << " " << best_r;
return 0;
}