Cod sursa(job #1529668)
Utilizator | Vasilescu Eliza Vasilescu | Data | 21 noiembrie 2015 10:13:42 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 95 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.62 kb |
#include <stdio.h>
int main(){
FILE *fin, *fout;
fin=fopen("ssm.in", "r");
fout=fopen("ssm.out", "w");
int n, i, sc, smax, nr, ind, insf, indmax, insfmax;
fscanf(fin, "%d", &n);
sc=0;
smax=0;
ind=1;
for(i=0; i<n; i++){
fscanf(fin, "%d", &nr);
sc+=nr;
if(sc<0){
sc=0;
ind=i+2;
}
if(sc>smax){
smax=sc;
insfmax=i+1;
indmax=ind;
}
}
fprintf(fout, "%d %d %d", smax, indmax, insfmax);
fclose(fin);
fclose(fout);
return 0;
}