Pagini recente » Cod sursa (job #3278014) | Cod sursa (job #743775) | Cod sursa (job #2987734) | Cod sursa (job #2345258) | Cod sursa (job #3238812)
#include <bits/stdc++.h>
using namespace std;
const int MOD = 1e9 + 7;
const int MAX_NUM = 6000005;
int a[MAX_NUM], n, k;
long long prefixSum[MAX_NUM];
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
fin >> n;
int sum = 0, currentSum = 0;
for (int i = 1; i <= n; ++i) {
fin >> a[i];
prefixSum[i] = prefixSum[i - 1] + a[i];
}
int minSum = 0, left, l, r;
for (int i = 1; i <= n; ++i) {
if (prefixSum[i - 1] < minSum) {
minSum = prefixSum[i - 1];
left = i;
}
currentSum = prefixSum[i] - minSum;
if (currentSum > sum) {
sum = currentSum;
l = left;
r = i;
}
}
fout << sum << " " << l << " " << r << "\n";
return 0;
}