Cod sursa(job #2038711)

Utilizator tudormaximTudor Maxim tudormaxim Data 13 octombrie 2017 22:28:04
Problema Subsecventa de suma maxima Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.65 kb
// Max_sum_subsequence.cpp : Defines the entry point for the console application.
//

#include <stdio.h>
#define maxn 6000001
#define oo 0x3f3f3f3f

int main() {
	FILE *fin = fopen("ssm.in", "r");
	FILE *fout = fopen("ssm.out", "w");
	int  n, i, val, left, right, sum = 0, pos = 0, sum_max = -oo;
	fscanf(fin, "%d", &n);
	for (i = 0; i < n; i++) {
		fscanf(fin, "%d", &val);
		if (sum < 0) {
			sum = val;
			pos = i;
		} else {
			sum = sum + val;
		}
		if (sum > sum_max) {
			sum_max = sum;
			left = pos + 1;
			right = i + 1;
		}
	}
	fprintf(fout, "%d %d %d \n", sum_max, left, right);
	fclose(fin);
	fclose(fout);
    return 0;
}