Pagini recente » Cod sursa (job #106399) | Cod sursa (job #166634) | Cod sursa (job #1252147) | Cod sursa (job #176278) | Cod sursa (job #2910166)
#include<fstream>
#include<algorithm>
#include<limits.h>
using namespace std;
ifstream cin("ssm.in");
ofstream cout("ssm.out");
#define TOP 6000005
int element[TOP], n, topSum = INT_MIN, currentSum = 0, position, startPosition, finalPosition;
int main() {
int i;
cin >> n;
for (i = 0; i < n; i++) {
cin >> element[i];
}
for (i = 0; i < n; i++) {
if (currentSum < 0) {
currentSum = element[i];
position = i;
}
else {
currentSum += element[i];
}
if (topSum < currentSum) {
topSum = currentSum;
startPosition = position;
finalPosition = i;
}
}
cout << topSum << " " << startPosition + 1 << " " << finalPosition + 1;
return 0;
}