Cod sursa(job #1246184)

Utilizator roxana.istratePoenaru Roxana roxana.istrate Data 20 octombrie 2014 18:50:46
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <iostream>
#include <limits.h>
using namespace std;

int N;
int nrs, dpi = -(1 << 30), maximum = INT_MIN, leftn;
int ans[2];

int main(){
	freopen("ssm.in", "r", stdin);
	freopen("sssm.out", "w", stdout);
	scanf("%d", &N);
	for(int i = 0; i < N; i++){
		scanf("%d", &nrs);
		dpi = max(nrs, dpi + nrs);
		if(dpi == nrs){
			leftn = i;
		}
		if(dpi > maximum){
			ans[0] = leftn;
			ans[1] = i;
			maximum = dpi;
		}
	}
	printf("%d %d %d\n", maximum, ans[0]+1, ans[1]+1);
	return 0;
}