Cod sursa(job #403911)

Utilizator cameleonGeorgescu Dan cameleon Data 25 februarie 2010 16:04:44
Problema Subsecventa de suma maxima Scor 75
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<stdio.h>
int n,s,a,i1,j1,i,imax,jmax,smax;
int main()
{
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
	scanf("%d",&n);i1=1;
	for(i=1;i<=n;i++)
	{
		scanf("%d",&a);
		if(s+a>a)
		{
			s+=a;
		 if(s>smax)
			{smax=s;
			 imax=i1;jmax=i;
			}
		 else
			 if(s==smax)
			 {
				 if(i-i1 < jmax-imax)
				 {
					 imax=i1;jmax=i;
				 }
			 }
		}
		else
		{
			s=a;i1=i;j1=i;
		}
	}
		printf("%d %d %d",smax,imax,jmax);
		return 0;
	
}