Cod sursa(job #798639)
Utilizator | Data | 16 octombrie 2012 20:39:07 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <cstdio>
int best = 1<<31, N, s=0, b, e, x, t=1;
int main () {
freopen("ssm.in","rt",stdin);
freopen("ssm.out","wt",stdout);
scanf("%d", &N);
for (int i=1; i<=N; ++i) {
scanf("%d", &x);
if (s<0) s=x, t=i;
else s+=x;
if (s>best) b=t, e=i, best=s;
}
printf("%d %d %d", best, b, e);
return 0;
}