Cod sursa(job #339481)

Utilizator cosmin79Carabet Cosmin Andrei cosmin79 Data 10 august 2009 00:21:27
Problema Subsecventa de suma maxima Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <stdio.h>
#define N 1<<23
#define max(a,b) (a>b ? a : b )
int n,best[N];
int main()
{
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
	scanf("%d",&n);
	int i,x,rez,poz_i=0,poz_f;
	rez=-2147000000;
	for (i=1; i<=n; i++)
	{
		scanf("%d",&x);
		if (best[i-1]+x>x)
			best[i]=best[i-1]+x;
		else
		{
			best[i]=x;
			poz_i=i;
		}
		if (best[i]>rez)
		{
			rez=best[i];
			poz_f=i;
		}
	}
	printf("%d %d %d\n",rez,poz_i,poz_f);
	return 0;
}