Cod sursa(job #1267948)
Utilizator | Data | 20 noiembrie 2014 15:08:09 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.6 kb |
#include <stdio.h>
#define MIN -1000000001
FILE *fin ,*fout;
int main()
{
fin = fopen("ssm.in" ,"r");
fout = fopen("ssm.out" ,"w");
int s ,sc=0 ,x ,smax=MIN , ind1 ,ind2 ,n ,i, inc;
fscanf(fin ,"%d" ,&n);
for(i=1;i<=n;i++)
{
fscanf(fin ,"%d" ,&x);
if(sc<0)
{
sc=x;
inc=i;
}
else
{
sc=sc+x;
}
if(sc>smax)
{
smax=sc;
ind1 = inc;
ind2=i;
}
}
fprintf(fout ,"%d %d %d" ,smax ,ind1 ,ind2);
return 0;
}