Cod sursa(job #339923)

Utilizator judy_kCristina Petrovici judy_k Data 12 august 2009 11:30:48
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <iostream.h>
#include <fstream.h>

#define nmax 7000020
#define inf -int(2e9)

int a[nmax], n, min, max, pozmin, pozmax, poz, i;

int main() {
	ifstream in("ssm.in");
	ofstream out("ssm.out");
	in >> n;
	for (i = 1; i <= n; ++i)
		in >> a[i];
	
	pozmin = 0;
	min = 0;
	max = inf; 
	a[0] = 0;
	for (i = 1; i <= n; ++i) {
		a[i] += a[i-1];
		if ((a[i] - min) > max ) {
		   		  max = a[i] - min;
		   		  pozmax = i;
		   		  poz = pozmin + 1;
        		  }
 	 
	
  		if (a[i] < min) {
		   		 min = a[i];
				 pozmin = i;		 
        		 }
	 }
	 
	 out << max << " " << poz << " " << pozmax;
	 
	 return 0; 	
 	
}