Pagini recente » Cod sursa (job #972148) | Cod sursa (job #1590819) | Cod sursa (job #671643) | Cod sursa (job #1074196) | Cod sursa (job #3354258)
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>
using namespace std;
int n;
int main(void) {
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin >> n;
long long maxSum = -2000000000;
long long currentSum = -2000000000;
int bestStart = 1, bestEnd = 1;
int currentStart = 1;
for (int i = 1; i < n + 1; i++) {
int val;
fin >> val;
if (currentSum < 0) {
currentSum = val;
currentStart = i;
} else currentSum += val;
if (currentSum > maxSum) {
maxSum = currentSum;
bestStart = currentStart;
bestEnd = i;
}
}
fout << maxSum << " " << bestStart << " " << bestEnd;
}