Cod sursa(job #535761)

Utilizator alinalinaMertoiu Alina alinalina Data 17 februarie 2011 18:54:58
Problema Subsecventa de suma maxima Scor 60
Compilator c Status done
Runda Arhiva educationala Marime 0.43 kb
#include<stdio.h>
#define DIM 6000000

long int v[DIM],i,best,a,b,n,max;

int main()
{FILE *f=fopen("ssm.in","r"), *g=fopen("ssm.out","w");

fscanf(f,"%ld",&n);
for(i=1;i<=n;i++) fscanf(f,"%ld",&v[i]);

best=v[1];
a=b=1;
for(i=2;i<=n;i++)
{
	if((best+v[i])>v[i])
		{best=best+v[i];
		if(max<best) {max=best;b=i;}}
	else {best=v[i];a=i;}
}

fprintf(g,"%ld %ld %ld",max,a,b);
fclose(f);
fclose(g);
return 0;


}