Cod sursa(job #607343)

Utilizator andreii1Ilie Andrei andreii1 Data 11 august 2011 18:19:04
Problema Subsecventa de suma maxima Scor 85
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <stdio.h>
#define DIM 6000100
long long a[DIM];
long long N,max=-int(2e9),min=0,i,x,aux=1,st,dr;

int main(){
	FILE *f = fopen("ssm.in","r");
	FILE *g = fopen("ssm.out","w");
	fscanf(f,"%lld",&N);
	for (i=1, a[0] = 0;i<=N;i++){
		fscanf(f,"%lld",&x);
		a[i] = a[i-1] + x;
		if (a[i]-min>max) {
			max=a[i]-min;
			st=aux;
			dr=i;
			}
		if (a[i]<min) {
			min=a[i];
			aux=i+1;
			}
		}
			fprintf(g,"%lld %lld %lld",max,st,dr);

	fclose(f);
	fclose(g);
	return 0;
}