Cod sursa(job #1204419)

Utilizator pavlov.ionPavlov Ion pavlov.ion Data 2 iulie 2014 21:35:28
Problema Subsecventa de suma maxima Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include<fstream>
using namespace std;
#define MAXN 6000002
#define LL long long
ifstream cin("ssm.in");
ofstream cout("ssm.out");
LL N,S[MAXN],i;
int main() {
	cin>>N;
	for(i=1;i<=N;i++)
	    cin>>S[i]; 
	 int best=-10000000,min=0,idx=0,beg,end;    
	for(i=1;i<=N;i++){
		S[i]+=S[i-1];
		if(best<S[i]-min){
				best=S[i]-min;
				beg=idx+1;
				end=i;
				}
		if(min>S[i]){
			min=S[i];
			idx=i;
			}
	}
	cout<<best<<" "<<beg<<" "<<end;				 				  		  
	 return 0;
	 }