Cod sursa(job #263402)
Utilizator | Data | 20 februarie 2009 12:37:54 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include<stdio.h>
int main()
{
FILE *f,*g;
f=fopen("ssm.in","r");
g=fopen("ssm.out","w");
int n,i,s=0,sm=-1,x,k,pozi=0,pozf=0;
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
{
fscanf(f,"%d",&x);
if(s<0) s=x,k=0;
else {
k++;
s+=x;
}
if(s>sm)
{
sm=s;
pozi=i-k;
pozf=i;
}
}
fprintf(g,"%d %d %d\n",sm,pozi,pozf);
return 0;
}