Cod sursa(job #386596)
| Utilizator | Data | 25 ianuarie 2010 12:50:15 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.48 kb |
#include<stdio.h>
FILE *f=fopen("ssm.in","r"), *g=fopen("ssm.out","w");
long s[8000000],n,i,smax=-2000000000,start,finish,sum,j;
int main()
{
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
fscanf(f,"%d", &s[i]);
for(i=1;i<=n;i++)
{
sum=0;
for(j=i;j<=n;j++)
{
sum=sum+s[j];
if(sum>smax)
smax=sum;
start=i;
finish=j;
}
}
fprintf(g,"%d %d %d", smax,start,finish);
fclose(f);
fclose(g);
return 0;
}
