Pagini recente » Cod sursa (job #455302) | Cod sursa (job #2977793) | Cod sursa (job #1197190) | Cod sursa (job #806168) | Cod sursa (job #418220)
Cod sursa(job #418220)
#include <fstream>
#include <limits.h>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int main() {
int elem, n, sum , best, min, bestSum, e, b = 0, bt;
in >> n;
in >> elem;
bestSum = sum = best = elem;
min = bestSum < 0 ? bestSum : 0;
bt = bestSum < 0 ? 1 : 0;
for (int i = 1; i < n; i++) {
in >> elem;
sum += elem;
best = sum - min;
if (sum < min) {
bt = i;
min = sum;
}
if (best > bestSum) {
bestSum = best;
e = i;
b = bt == e ? e : bt + 1;
}
}
out << bestSum << " " << b + 1 << " " << e + 1 ;
return 0;
}