Pagini recente » Cod sursa (job #134945) | Cod sursa (job #2029704) | Cod sursa (job #2249364) | Cod sursa (job #2185643) | Cod sursa (job #2470640)
#include <iostream>
#include <climits>
#include <fstream>
#define NMAX 6000003
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main(){
long long int n, s[NMAX], best[NMAX], a[NMAX], i;
fin >> n;
s[0] = 0;
for(i = 1; i <= n; ++i)
{
fin >> a[i];
s[i] = s[i - 1] + a[i];
}
long long int min = 0, bestSum = INT_MIN, beg, end;
for(i = 1; i <= n; ++i)
{
best[i] = s[i] - min;
if(min > s[i]) min = s[i], beg = i + 1;
if(bestSum < best[i]) bestSum = best[i], end = i;
}
fout << bestSum << ' ' << beg << ' ' << end;
return 0;
}