Pagini recente » Cod sursa (job #136456) | Cod sursa (job #2094746) | Cod sursa (job #2597266) | Cod sursa (job #2340381) | Cod sursa (job #3194330)
#include <bits/stdc++.h>
using namespace std;
long long s, sumMax, st, dr, stFinal, drFinal;
int main()
{
freopen("ssm.in", "r", stdin);
freopen("ssm.out","w",stdout);
int n;
cin >> n;
cin >> s;
if (n == 1)
{
cout << s << 1 << " " << 1;
return 0;
}
for (int i = 1; i < n; i++)
{
int x; cin >> x;
if (s + x > x)
{
s = s + x;
dr++;
}
else
{
st = dr = i;
s = x;
}
if (s > sumMax)
{
sumMax = s;
stFinal = st;
drFinal = dr;
}
else if (s == sumMax)
{
if (st < stFinal)
{
stFinal = st;
drFinal = dr;
}
else if (st == stFinal)
{
if (dr - st + 1 < drFinal - stFinal + 1)
{
stFinal = st;
drFinal = dr;
}
}
}
}
cout << sumMax << " " << stFinal+1 << " " << drFinal+1;
return 0;
}