Cod sursa(job #3337165)
| Utilizator | Data | 26 ianuarie 2026 23:14:29 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | c-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.59 kb |
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *fin,*fout;
int n,i,sum,x,maxs,maxi,maxj,start;
fin=fopen("ssm.in","r");
fscanf(fin,"%d%d",&n,&sum);
// printf("%d ",sum);
maxs=sum;
start=maxi=maxj=0;
for(i=1;i<n;i++){
fscanf(fin,"%d",&x);
if(0>sum){
sum=x;
start=i;
}else{
sum+=x;
}
if(sum>maxs){
maxs=sum;
maxj=i;
maxi=start;
}
// printf("%d ",sum);
}
fclose(fin);
fout=fopen("ssm.out","w");
fprintf(fout,"%d %d %d",maxs,maxi+1,maxj+1);
fclose(fout);
return 0;
}
