Pagini recente » Cod sursa (job #1726058) | Cod sursa (job #1594254) | Cod sursa (job #119913) | Cod sursa (job #440948) | Cod sursa (job #2841964)
#include <iostream>
#include <fstream>
#include <limits.h>
using namespace std;
const char iname[] = "ssm.in";
const char oname[] = "ssm.out";
const int MAXN = 6000100;
int arr[MAXN], n;
#define FOR(i, a, b) for(int i = (a); i <= (b); ++i)
int main(void) {
ifstream in(iname); ofstream out(oname);
in >> n;
FOR (i, 1, n) in >> arr[i];
int bestSum = INT_MIN, sum = 0, beg, end, idx;
FOR(i, 1, n) {
if(sum < 0) {
sum = arr[i], idx = i;
} else {
sum += arr[i];
}
if (bestSum < sum) {
bestSum = sum, beg = idx, end = i;
}
}
out << bestSum << " " << beg << " " << end;
in.close(), out.close();
return 0;
}