Cod sursa(job #496264)

Utilizator scipianusFMI Ciprian Olariu scipianus Data 28 octombrie 2010 11:40:31
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<fstream>

using namespace std ;

int st, stmax, drmax, n ;
long long suma, sumamax ;

int main()
{
	int i,x ;
	
	ifstream fin("ssm.in") ;
	fin>>n ;
	fin>>sumamax ;
	stmax = drmax = 1 ;
	if (sumamax < 0) { suma = 0 ; st = 2 ;}
	else { suma = sumamax ; st = 1 ; }
	
	for (i=2 ; i<=n ; i++)
	{
		fin>>x ;
		suma += x ;
		if (suma > sumamax)
		{
			sumamax = suma; stmax = st ; drmax = i ;
		}
		if (suma < 0)
		{
			suma = 0 ;
			st = i+1 ;
		}
	}
	fin.close() ;
	
	ofstream fout("ssm.out") ;
	fout<<sumamax<<" "<<stmax<<" "<<drmax<<"\n" ;
	fout.close() ;
	
	return 0 ;
}