Cod sursa(job #1087690)

Utilizator vlcmodanModan Valentin vlcmodan Data 19 ianuarie 2014 19:09:39
Problema Subsecventa de suma maxima Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<stdio.h>
int a[100000],best[100000],i,j,n,bestie,x[10000],y[10000],xi,yi;
using namespace std;
int main()
{
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
	scanf("%d",&n);
	for(i=1;i<=n;i++)
		scanf("%d",&a[i]);
	bestie=a[1];
	for(i=2;i<=n;i++)
	{
		best[i]=a[i];
		x[i]=i;
		y[i]=i;
		if(best[i]<best[i-1]+a[i])
			{
				best[i]=best[i-1]+a[i];
				x[i]=x[i-1];
				y[i]=i;
		}
		if(bestie<best[i])
			{
				xi=x[i];
				yi=y[i];
				bestie=best[i];
		}
	}
	printf("%d %d %d\n",bestie,xi,yi);
	return 0;}