Cod sursa(job #1149984)
Utilizator | Data | 22 martie 2014 14:42:20 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 95 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n, x, y, z, sc, i, smax=-1, a;
FILE *fi=fopen("ssm.in", "r"), *fo=fopen("ssm.out", "w");
fscanf(fi, "%d", &n);
sc=0;
x=1;
for(i=1;i<=n;i++){
fscanf(fi, "%d", &a);
sc+=a;
if(sc<0){
sc=0;
x=i+1;
}
if(sc>smax){
smax=sc;
z=x;
y=i;
}
}
fprintf(fo, "%d %d %d", smax, z, y);
return 0;
}