Pagini recente » Cod sursa (job #786270) | Cod sursa (job #2976609) | Cod sursa (job #3234708) | Cod sursa (job #954254) | Cod sursa (job #903309)
Cod sursa(job #903309)
#include <cstdio>
int main (void)
{
std::freopen("ssm.in","r",stdin);
std::freopen("ssm.out","w",stdout);
int n, x, i, begin, end, sum, best_s(1), best_e(1), best(-(1 << 28));
std:;scanf("%d\n",&n);
for (i = 1, begin = end = 0, sum = -1 ; i <= n ; ++i)
{
std::scanf("%d",&x);
if (sum < 0)
{
sum = x;
begin = end = i;
if (sum > best)
{
best_s = best_e = i;
best = sum;
}
}
else
{
sum += x;
++end;
if (sum > best)
{
best = sum;
best_s = begin;
best_e = end;
}
}
}
std::printf("%d %d %d\n",best,best_s,best_e);
std::fclose(stdin);
std::fclose(stdout);
return 0;
}