Pagini recente » Cod sursa (job #1615230) | Cod sursa (job #2973042) | Cod sursa (job #2826077) | Cod sursa (job #2276030) | Cod sursa (job #3142285)
#include <iostream>
using namespace std;
const int INF = 1e9;
const int NMAX = 6000001;
int dp[NMAX];
int start[NMAX];
int main ()
{
freopen("ssm.in" , "r" , stdin);
freopen("ssm.out" , "w" , stdout);
int n; cin >> n;
int ans = -INF;
int startAns, endAns;
int a;
for (int i = 1; i <= n; i++)
{
cin >> a;
if (dp[i-1] >= 0)
{
start[i] = start[i-1];
dp[i] = dp[i-1] + a;
}
else //
{
start[i] = i;
dp[i] = a;
}
if (ans < dp[i])
{
ans = dp[i];
startAns = start[i];
endAns = i;
}
}
cout << ans << ' ' << startAns << ' ' << endAns << '\n';
}