Cod sursa(job #1499426)

Utilizator o_micBianca Costin o_mic Data 10 octombrie 2015 16:50:03
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

vector <int> v;

int main() {
	int n, x;
	ifstream fin("ssm.in");
	ofstream fout("ssm.out");
	fin >> n;
	for(int i = 0; i < n; ++i) {
		fin >> x;
		v.push_back(x);
	}
	int maxx = v[0], sum = 0, minn = 0, l = 1, res = v[0], lf = 1, rf = 1;
	for(int i = 0; i < n; ++i) {
		if(sum < minn) {
			minn = sum;
			l = i + 1;
		}
		sum += v[i];
		if(sum - minn > res) {
			res = sum - minn;
			lf = l;
			rf = i + 1;
		}
	}
	cout << res << " " << lf << " " << rf;
	return 0;
}