Cod sursa(job #787431)
Utilizator | Data | 13 septembrie 2012 13:34:50 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 95 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
#include <cstdio>
int N, bestSum = 1<<31, s = 0;
int b,e,x,k;
int main () {
freopen("ssm.in","rt",stdin);
freopen("ssm.out","wt",stdout);
scanf("%d",&N);
for (int i=0; i<N; ++i) {
scanf("%d, ", &x);
s+=x;
if (s < 0) s=0, k = i+1;
if (s > bestSum) b=k, bestSum = s, e = i;
}
printf("%d %d %d", bestSum, b+1, e+1);
return 0;
}