Pagini recente » Cod sursa (job #1014925) | Cod sursa (job #3132238) | Cod sursa (job #600746) | Cod sursa (job #2507766) | Cod sursa (job #2713255)
#include <iostream>
#include <fstream>
#include <climits>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
const int NMAX = 6e6 + 1;
int v[NMAX];
int main()
{
int i, j, n, best = INT_MIN, s=0;
fin>>n;
for(i=1; i<=n; i++)
{
fin>>v[i];
}
s = v[1];
int start=1, stop=1, index;
for(i=2; i<=n; i++)
{
if(s + v[i] >= v[i])
{
s += v[i];
}
else
{
s = v[i];
index = i;
}
if(s > best)
{
best = s;
start = index;
stop = i;
}
}
if(n == 1)
best = v[1];
fout<<best<<' '<<start<<' '<<stop;
fin.close();
fout.close();
return 0;
}