Pagini recente » Cod sursa (job #1855710) | Cod sursa (job #1670961) | Cod sursa (job #2264276) | Cod sursa (job #2320665) | Cod sursa (job #3142755)
#include <iostream>
#include <cmath>
#include <algorithm>
#include <vector>
#include <string>
#include <cstring>
#include <random>
#include <ctime>
#include <climits>
#include <map>
#include <iomanip>
#include <fstream>
//#include <Windows.h>
//#include <bits/stdc++.h>
using namespace std;
vector<int> v;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main() {
int n;
fin >> n;
for (int i = 0; i < n; ++i) {
int elem;
fin >> elem;
v.push_back(elem);
}
int maxSum = v[0], currSum = v[0], firstIndex = 0, lastIndex = 0, currIndex = 0;
for (int i = 1; i < n; ++i) {
if (currSum < 0) {
currSum = v[i];
currIndex = i;
} else {
currSum += v[i];
}
if (currSum > maxSum) {
maxSum = currSum;
firstIndex = currIndex;
lastIndex = i;
}
}
fout << maxSum << ' ' << firstIndex + 1 << ' ' << lastIndex + 1;
return 0;
}