Pagini recente » Cod sursa (job #1510332) | Cod sursa (job #2758992) | Cod sursa (job #2067433) | Cod sursa (job #1727736) | Cod sursa (job #1998383)
#include <iostream>
#include <fstream>
#define nmax 6000005
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n,a[nmax];
int s[nmax];
int lg[nmax];
void Read()
{int i;
fin>>n;
for(i=1;i<=n;i++)
fin>>a[i];
}
void pd()
{int i;
s[1]=a[1]; lg[1]=1;
for(i=2;i<=n;i++)
if(s[i-1]+a[i]>a[i])
{s[i]=s[i-1]+a[i];
lg[i]=lg[i-1]+1;}
else
{s[i]=a[i]; lg[i]=1;}
}
void Solve()
{int i,imax,smax;
smax=a[1]; imax=1;
for(i=2;i<=n;i++)
if(s[i]>smax)
{smax=s[i]; imax=i;}
fout<<smax<<" "<<imax-lg[imax]+1<<" "<<imax<<endl;
}
int main()
{Read();
pd();
Solve();
return 0;
}