Cod sursa(job #1182763)

Utilizator moise_alexandruMoise Alexandru moise_alexandru Data 7 mai 2014 16:09:09
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>
#include <iostream>
using namespace std;

int v[6000005];

int main() {
	
	ifstream cin("ssm.in");
	ofstream cout("ssm.out");
	
	int n; cin >> n;
	for (int i = 0; i < n; i++) {
		cin >> v[i];
	}
	
	int mx=v[0];
	int a=0,b=0;
	int afinal=0, bfinal = 0;
	
	int s=0;
	for(int i=0;i<n;i++)
	{
		s=s+v[i];
		
		if(s>mx)
		{	
			mx=s;
			afinal=a;
			bfinal=i;
		}
		if(s<0){
			s=0;
			a=i+1;
		}
	}
	
	cout << mx << " " << afinal + 1 << " " << bfinal + 1 << "\n";
	return 0;
}