Pagini recente » Cod sursa (job #943105) | Cod sursa (job #3288393) | Cod sursa (job #3216008) | Cod sursa (job #794454) | Cod sursa (job #3238967)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
#define MAX_VALUE 2000000001
#define MIN_VALUE -2000000001
#define MAX_LEN 6000001
int sum[MAX_LEN];
int main() {
int n;
fin >> n;
int left = 0, ansLeft = 0, ansRight = 0, minSum = MAX_VALUE, ans = MIN_VALUE;
for (int i = 1; i <= n; ++i) {
int number;
fin >> number;
sum[i] = sum[i - 1] + number;
if (sum[i] - minSum > ans || sum[i] > ans) {
ans = max(sum[i] - minSum, sum[i]);
ansLeft = left + 1;
ansRight = i;
}
if (sum[i] < minSum) {
minSum = sum[i];
left = i;
}
}
fout << ans << ' ' << ansLeft << ' ' << ansRight;
return 0;
}
/*
*/