Pagini recente » Cod sursa (job #956053) | Cod sursa (job #883347) | Cod sursa (job #1552976) | Cod sursa (job #780040) | Cod sursa (job #2694313)
#include <iostream>
#include <cstdio>
using namespace std;
#define MAXN 6000000
int main()
{
FILE *fin=fopen("ssm.in", "r");
int n;
fscanf(fin, "%d", &n);
int x;
fscanf(fin, "%d", &x);
int maxSubSum=x, maxSubSumI=x, start=0, left=0, right=0;
for (int i=1; i<n; i++){
fscanf(fin, "%d", &x);
if (maxSubSumI>0){
maxSubSumI+=x;
}else{
maxSubSumI=x;
start=i;
}
if (maxSubSum<maxSubSumI){
maxSubSum=maxSubSumI;
left=start;
right=i;
}
}
fclose(fin);
FILE *fout=fopen("ssm.out", "w");
fprintf(fout, "%d %d %d", maxSubSum, left+1, right+1);
fclose(fout);
return 0;
}