Pagini recente » Cod sursa (job #769431) | Cod sursa (job #667469) | Cod sursa (job #2837244) | Cod sursa (job #3171348) | Cod sursa (job #2829188)
#include <iostream>
#include <fstream>
#include <climits>
using namespace std;
#define ll long long
#define cout g
ifstream f("ssm.in");
ofstream g("ssm.out");
#define MAXN 60000002
int n;
int a[MAXN];
ll b[MAXN];
int st = 1;
ll mx = LLONG_MIN;
int resi, resst;
int main()
{
f >> n;
for (int i = 1; i <= n; ++i) {
f >> a[i];
if (mx < a[i]) {
mx = a[i];
resi = i;
}
}
if (mx < 0) {
cout << mx << ' ' << resi << ' ' << resi << endl;
return 0;
}
for (int i = 1; i <= n; ++i) {
if (b[i-1] >= 0) {
b[i] = b[i-1]+a[i];
} else {
b[i] = a[i];
st = i;
}
if (mx < b[i]) {
mx = b[i];
resi = i;
resst = st;
}
}
cout << mx << ' ' << resst << ' ' << resi << endl;
return 0;
}