Cod sursa(job #1641532)

Utilizator Martin00Ionescu Martin Martin00 Data 9 martie 2016 00:11:34
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<fstream>
#include<math.h>
using namespace std;
int  n,v[6000000],i,sol,curent,pozstart,pozend,startcurent,s;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main(){
	fin>>n;
	curent=0;
	sol=-(pow(2,30)-1);
	
	for(i=1;i<=n;i++){
		fin>>v[i];
		if(curent<0){
			curent=v[i];
			startcurent=i;
	}else
		curent=curent+v[i];
		if(sol<curent){
			sol=curent;
			pozstart=startcurent;
			pozend=i;
		}
	}
	for(i=pozstart;i<=pozend;i++)
		s=s+v[i];
		
	fout<<s<<" "<<pozstart<<" "<<pozend;
	return 0;
}