Pagini recente » Cod sursa (job #2401715) | Cod sursa (job #1402889) | Cod sursa (job #2764540) | Cod sursa (job #591824) | Cod sursa (job #2289939)
#include <fstream>
using namespace std;
const long NMAX = 6000005;
long v[NMAX];
long N;
int main() {
ifstream iff("ssm.in");
ofstream off("ssm.out");
iff >> N;
for (long i = 1; i <= N; ++i) {
iff >> v[i];
}
long b,e;
long cr_sum = v[1];
long sum = cr_sum;
b = e = 1;
long fb, fe;
for (long i = 2; i <= N; ++i) {
if (cr_sum < 0) {
b = e = i;
cr_sum = v[i];
} else {
cr_sum += v[i];
e = i;
}
if (cr_sum > sum) {
sum = cr_sum;
fb = b;
fe = e;
} else if (cr_sum == sum) {
if (e - b < fe - fb) {
fb = b;
fe = e;
}
}
}
off << sum << " " << fb << " " << fe;
return 0;
}