Cod sursa(job #412269)
| Utilizator | Data | 5 martie 2010 14:15:54 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 70 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.44 kb |
#include<stdio.h>
int n,min=0,minP=0,st,fn;
int main()
{
FILE*f=fopen("ssm.in","r");
fscanf(f,"%d",&n);
int i=1,var=0,max=-999999999,aux;
for(;i<=n;++i)
{
fscanf(f,"%d",&aux);
var+=aux;
aux=var;
if(var<min)
{min=var;minP=i;}
else
if(aux-min>max)
{
max=aux-min;
st=minP;
fn=i;
}
}
fclose(f);
FILE*g=fopen("ssm.out","w");
fprintf(g,"%d %d %d",max,st+1,fn);
fclose(g);
return 0;
}
