Pagini recente » Cod sursa (job #1301601) | Cod sursa (job #2399582) | Cod sursa (job #1601297) | Cod sursa (job #917692) | Cod sursa (job #1522639)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fi("ssm.in");
ofstream fo("ssm.out");
const int Dim=6000001;
long a[Dim],c[Dim],n,smax=-10000000,i,pi,pf,s,inceput=Dim,sfarsit=Dim,p;
int main()
{
fi>>n;
for (i=1;i<=n;i++)
{fi>>a[i];
c[i] = max(c[i-1] + a[i], a[i]);
smax=max(smax,c[i]);
}
for (i=1;i<=n;i++)
if (c[i]==smax)
{ s=smax;
pf=i;p=i;
while (p > 0 ) {s-=a[p];if (s==0) pi=p;p--;}
if (pi<inceput ||(pi==inceput && pf<sfarsit)) {inceput=pi;sfarsit=pf;}
}
fo<<smax<<" "<<inceput<<" "<<sfarsit;
return 0;
}