Cod sursa(job #1121966)

Utilizator anaid96Nasue Diana anaid96 Data 25 februarie 2014 15:04:31
Problema Subsecventa de suma maxima Scor 85
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include<stdio.h>

using namespace std;

FILE *in,*out;

//constante
const int oo=-(1<<30)-1;

//variabile
int n,val;
int sum,maxSum=oo;
int stanga=1;
int dreapta;

int main(void)
{
	in=fopen("ssm.in","rt");
	out=fopen("ssm.out","wt");
	fscanf(in,"%d",&n);
	
	for(int i=1 ; i<=n ; ++i)
	{
		fscanf(in,"%d",&val);
		sum+=val;
		
		if(sum > maxSum)
		{
			maxSum=sum;
			dreapta=i;			
		}
		
		if(sum<0)
		{
			sum=0;
			stanga=i+1;
		}
	}
	
	fprintf(out,"%d %d %d",maxSum,stanga,dreapta);
	fclose(in);
	fclose(out);
	return 0;
}