Pagini recente » Cod sursa (job #3294576) | Cod sursa (job #2340846) | Cod sursa (job #667940) | Cod sursa (job #2664948) | Cod sursa (job #558935)
Cod sursa(job #558935)
# include <cstdio>
int v[6000000],pred[6000000];
int main ()
{
freopen ("ssm.in","r",stdin);
freopen ("ssm.out","w",stdout);
int n,smax=-2000000000,in=1,sf=1;
scanf ("%d",&n);
for (int i=1; i<=n;i++)
scanf ("%d",&v[i]);
pred[n]=n;
for (int i=(n-1);i;i--)
{
if (v[i+1]<=0)
pred[i]=i;
else
{
v [i]+=v[i+1];
pred[i]=pred[i+1];
}
}
for (int i=1; i<=n;i++)
{
if (v[i]>smax)
{
smax=v[i];
in=i;
sf=pred[i];
}
if (v[i]==smax)
if ((sf-in)>(pred[i]-i))
{
smax=v[i];
in=i;
sf=pred[i];
}
}
printf ("%d %d %d",smax,in,sf);
return 0;
}