Pagini recente » Cod sursa (job #1838238) | Cod sursa (job #2577543) | Cod sursa (job #1175183) | Cod sursa (job #413043) | Cod sursa (job #2154540)
#include <stdio.h>
#include <limits.h>
int main(void)
{
int n, sum, best, x, s, e, i, bs, be, ch, b;
#ifdef INFOARENA
freopen("ssm.in", "r", stdin);
freopen("ssm.out", "w", stdout);
#endif
scanf("%d\n", &n);
sum = s = e = bs = be = 0;
best = INT_MIN;
for (i = 1; i <= n; i++) {
b = 1;
x = 0;
while ((ch = getchar()) != ' ' && ch != EOF && ch != '\n') {
if (ch == '-') {
b = -1;
} else {
x = x * 10 + ch - '0';
}
}
x *= b;
if (x > sum + x) {
s = e = i;
sum = x;
} else {
sum += x;
e = i;
}
if (sum > best) {
bs = s;
be = e;
best = sum;
}
}
printf("%d %d %d\n", best, bs, be);
return 0;
}