Cod sursa(job #367576)

Utilizator Addy.Adrian Draghici Addy. Data 22 noiembrie 2009 18:51:06
Problema Subsecventa de suma maxima Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <stdio.h>

int n, i, x, p, u, S, sol, solp, solu;

int main() {
	
	FILE *f = fopen("ssm.in", "r");
	FILE *g = fopen("ssm.out", "w");
	
	fscanf(f, "%d %d", &n, &S);
	
	sol = S;
	solp = solu = 1; p = u = 1;	
	for (i = 2; i <= n; i++) {
		fscanf(f, "%d", &x);
		
		if (S + x >= x)
			S += x, u = i;
		else
			S = x, p = u = i;
		
		if (S > sol)
			sol = S, solp = p, solu = u;
	}
	
	fprintf(g, "%d %d %d", sol, solp, solu);
	
	fclose(f);
	fclose(g);
	
	return 0;
}