Pagini recente » Cod sursa (job #552898) | Cod sursa (job #180173) | Cod sursa (job #1111909) | Cod sursa (job #369098) | Cod sursa (job #2712909)
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int sum[600004], v[600004], best[600004], i, n, maxi, mini, a, b;
int main()
{
fin >> n;
for (i=1; i<=n; i++)
{
fin >> v[i];
}
sum[0] = 0;
for (i = 1; i <= n; i++)
{
sum[i] = v[i] + sum[i-1];
}
mini = sum[0];
maxi = -1000000000;
for (i = 1; i <= n; i++)
{
best[i] = sum[i] - mini;
if (mini > sum[i]) {mini = sum[i]; a = i;}
if (maxi < best[i]) {maxi = best[i]; b = i;}
}
fout << maxi << " " << a+1 << " " << b;
}