Cod sursa(job #662591)

Utilizator razielreaperMatei Andrei razielreaper Data 16 ianuarie 2012 20:28:06
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <stdio.h>
int max,n,i,ic,sf,sc,pc,a[6000005];
int main()
{
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
	scanf("%d\n",&n);
	for (i=1; i<=n; ++i)
		scanf("%d ",&a[i]);
	max=a[1]; sc=a[1]; ic=1; sf=1; pc=1;
	for (i=2; i<=n; i++)
	{
		if (sc>=0) sc+=a[i];
		else
		{
			sc=a[i];
			pc=i;
		}
		if (sc>max)
		{
			ic=pc;
			sf=i;
			max=sc;
		}
	}
	printf("%d %d %d\n",max,ic,sf);
	return 0;
	
}