Cod sursa(job #2526149)

Utilizator TheGodFather2131Alexandru Miclea TheGodFather2131 Data 18 ianuarie 2020 12:09:28
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.92 kb
//ALEXANDRU MICLEA

#include <vector>
#include <algorithm>
#include <string>
#include <queue>
#include <map>
#include <set>
#include <unordered_map>
#include <time.h>
#include <iomanip>
#include <deque>
#include <math.h>
#include <cmath>
#include <assert.h>
#include <stack>
#include <bitset>
#include <random>
#include <chrono>

using namespace std;

//#include <iostream>
#include <fstream>
ifstream cin("ssm.in"); ofstream cout("ssm.out");

//VARIABLES

int n, val;
long long ans;
int best = -1e9, bpos, epos, sum = 0, pos;

int v[6000005];

//FUNCTIONS



//MAIN
int main() {

	cin >> n;
	for (int i = 1; i <= n; i++) {
		cin >> v[i];
	}

	for (int i = 1; i <= n; i++) {
		if (sum < 0) {
			sum = v[i];
			pos = i;
		}
		else {
			sum += v[i];
		}

		if (best < sum) {
			best = sum;
			bpos = pos;
			epos = i;
		}
	}

	cout << best << " " << bpos << " " << epos;

	return 0;
}