Cod sursa(job #384485)
| Utilizator | Data | 20 ianuarie 2010 10:15:44 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 85 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.58 kb |
#include<stdio.h>
#include<stdlib.h>
long int sum = 0, n, a, sumax = 1, beg, end, id;
int main()
{
sumax<<=32 ;
sumax *= -1;
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
scanf("%li", &n);
for(long int i=1; i<=n; i++)
{
scanf("%li",&a);
if (sum< 0 )
sum = a, id = i;
else sum+=a;
if (sumax<sum)
sumax = sum, beg = id, end = i;
}
printf("%li %li %li",sumax, beg, end);
fclose(stdin);
fclose(stdout);
return 0;
}
