Pagini recente » Cod sursa (job #2024130) | Cod sursa (job #2646469) | Cod sursa (job #1215189) | Cod sursa (job #1838192) | Cod sursa (job #1998396)
#include <iostream>
#include <fstream>
#define nmax 6000005
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n,a[nmax];
void Read()
{int i;
fin>>n;
for(i=1;i<=n;i++)
fin>>a[i];
}
void pd()
{int i;
int imax;
long long smax,lgmax;
long long s,lg;
s=smax=a[1]; lg=lgmax=1;
imax=1;
for(i=2;i<=n;i++)
if(s+a[i]>a[i])
{s=s+a[i];
lg=lg+1;
if(s>smax)
{smax=s; imax=i;
lgmax=lg;
}
}
else
{s=a[i]; lg=1;
if(s>smax)
{smax=s; imax=i;
lgmax=lg;
}
}
int p=imax-lgmax+1;
i=p;
while(a[i-1]==0) {p--; i--;}
fout<<smax<<" "<<p<<" "<<imax<<endl;
}
int main()
{Read();
pd();
return 0;
}