Pagini recente » Cod sursa (job #448845) | Cod sursa (job #1332759) | Cod sursa (job #2295973) | Cod sursa (job #578577) | Cod sursa (job #540313)
Cod sursa(job #540313)
#include <stdio.h>
int main() {
FILE * out = fopen("ssm.out", "w");
FILE * in = fopen("ssm.in", "r");
int n;
fscanf(in,"%d",&n);
int i;
int suma = 0;
int startIndice = -1;
int endIndice = -1;
int maxSuma = -1* (1<<16);
int maxStart = -1;
int maxEnd = -1;
for ( i=0; i<n; i++){
int k;
fscanf(in,"%d ",&k);
if ( k>k+suma ){
suma = k;
startIndice = i;
endIndice = 0;
} else {
suma=suma+k;
endIndice = i;
}
if ( suma>maxSuma){
maxSuma = suma;
maxStart = startIndice;
maxEnd = endIndice;
}
}
fprintf(out,"%d %d %d",maxSuma,maxStart+1,maxEnd+1);
fclose(out);
fclose(in);
}