Pagini recente » Cod sursa (job #2379819) | Cod sursa (job #1899738) | Cod sursa (job #2820426) | Cod sursa (job #1660673) | Cod sursa (job #1134085)
#include <iostream>
#include<fstream>
#include <limits.h>
using namespace std;
int max(int a, int b)
{
return a > b ? a : b;
}
int main()
{
long n, v, startindex = 1, endindex = 1, partialsum = 0, partialsumLast = 0, bestsum = INT_MIN;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin >> n;
for (int i = 1; i <= n; i++)
{
fin >> v;
partialsumLast = partialsum;
partialsum = max(partialsumLast + v, v);
if (partialsumLast<0 && partialsum>partialsumLast)
startindex = i;
if (bestsum < partialsum)
{
bestsum = partialsum;
endindex = i;
}
}
cout << bestsum << " " << startindex << " " << endindex;
return 0;
}