Cod sursa(job #372728)

Utilizator avram_florinavram florin constantin avram_florin Data 11 decembrie 2009 14:36:26
Problema Subsecventa de suma maxima Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
//secventa de suma maxima
//infoarena ,arhiva educationala
#include<fstream>
#define MAXN 6000001
#define for(i,a,b) for(i=a;i<=b;i++)
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int n,i,max1,begin,end,x,bests,best[MAXN];
int main ()
{
	f>>n>>x;
	bests=x;
	best[1]=bests;
	begin=1;
	end=1;
	for(i,2,n)
		{
			f>>x;
			if((best[i-1]+x)>x)
				best[i]=best[i-1]+x;
				else
				{
					begin=i;
					end=i;
					best[i]=x;
				}
			if(best[i]>bests)
				{
					bests=best[i];
					end=i;
				}			
		}
	g<<bests<<' '<<begin<<' '<<end<<"\n";
	f.close();
	g.close();
	return 0;
}