Cod sursa(job #1461115)

Utilizator ArkinyStoica Alex Arkiny Data 14 iulie 2015 19:09:59
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
using namespace std;

ifstream in("ssm.in");
ofstream out("ssm.out");

#define MAX 6000001

int N,A[MAX];

int main()
{
	int N;
	in>>N;
	for(int i=1;i<=N;i++)
		in>>A[i];

	int i,j,max,l=1,r=1,S,l_max,r_max,d1,d2;
	d1=A[1];
	max=d1;
	l_max=1;
	r_max=1;
	for(i=2;i<=N;i++)
	{
		if(A[i] > d1 + A[i] )
		{
			d2=A[i];
			l=i;
			r=i;
		}
		else
		{
			d2=d1 + A[i];
			++r;
		}

		if(d2 > max)
		{
				l_max=l;
				r_max=r;
				max=d2;
		}
		d1=d2;

	}
	out<<max<<" "<<l_max<<" "<<r_max;
	return 0;
}