Cod sursa(job #339904)

Utilizator judy_kCristina Petrovici judy_k Data 12 august 2009 03:41:31
Problema Subsecventa de suma maxima Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <stdio.h>

#define nmax 6000020
#define inf -2000000000

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

int main() {
	freopen ("ssm.in", "r", stdin);
	freopen ("ssm.out", "w", stdout);
	scanf ("%d", &n);
	for (i = 1; i <= n; ++i)
		scanf ("%d", &a[i]);
	
	pozmin = 0;
	min = 0;
	max = inf; 
	for (i = 1; i <= n; ++i) {
		a[i] += a[i-1];
		if ((a[i] - min) > max ) {
		   		  max = a[i] - min;
		   		  pozmax = i;
        		  }
 	 
	
  		if (a[i] < min) {
		   		 min = a[i];
				 pozmin = i;		 
        		 }
	 }
	 
	 printf ("%d %d %d", max, pozmin + 1, pozmax);
	 
	 return 0; 	
 	
}