Cod sursa(job #418059)

Utilizator Cristi_hedHedes Cristian Teodor Cristi_hed Data 15 martie 2010 12:57:52
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<fstream>
#include<iostream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int a[6000010];
int n;
int smax, sc, startc, st, dr, i;
int main()
{
	fin>>n;
	for(int j=1; j<=n; ++j)
		fin>>a[j];
	smax=-2000000;
	sc=-1; 
	startc=0;
	for( i=1; i<=n; ++i)
	{
		if(sc<0)
			{
				sc=a[i];
				startc=i;
		}
		else
			
				sc+=a[i];
				
			
		if(sc>smax)
		{
			smax=sc;
			st=startc;
			dr=i;
		}
	}
	
	fout<<smax<<" "<<st<<" "<<dr;
	
	fin.close();
	fout.close();
	return 0;
}