Cod sursa(job #366648)

Utilizator ChallengeMurtaza Alexandru Challenge Data 22 noiembrie 2009 10:09:21
Problema Subsecventa de suma maxima Scor 75
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <stdio.h>

long int i=1,j,n,p=1,s=0,s_max=0,k,x,max_i,max_j;
FILE *f;

int main(){
	f=fopen("ssm.in","r");
	fscanf(f,"%ld",&n);
	while (p<=n){
		fscanf(f,"%ld",&x);
		if (x>0){
			s+=x;
			if(s>s_max){s_max=s;max_i=i;max_j=j;}
			j+=1;p+=1;
		}else{
			if(x+s<=0){i=p+1;j=p+1;s=0;}
			else {s+=x;j+=1;}
			p+=1;
		}
	}
	fclose(f);
	f=fopen("ssm.out","w");
	fprintf(f,"%ld %ld %ld",s_max,max_i,max_j);
	fclose(f);
}