Cod sursa(job #800257)
Utilizator | Razvan Idomir tsuby | Data | 21 octombrie 2012 10:27:21 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
#include <cstdio>
int n, x;
int best_sum = -2000000000, sum, beg, end, t=1;
int main()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
scanf("%d\n",&n);
for(int i=1;i<=n;i++)
{
scanf("%d ",&x);
if(sum < 0)
sum = x, t = i;
else
sum += x;
if(sum > best_sum)
{
beg = t;
end = i;
best_sum = sum;
}
}
printf("%d %d %d", best_sum, beg, end);
return 0;
}