Pagini recente » Cod sursa (job #2742551) | Cod sursa (job #1218403) | Cod sursa (job #245231) | Cod sursa (job #2776324) | Cod sursa (job #558945)
Cod sursa(job #558945)
# include <cstdio>
int v[6000000],pred[6000000];
int main ()
{
freopen ("ssm.in","r",stdin);
freopen ("ssm.out","w",stdout);
int n,smax,in,sf;
scanf ("%d",&n);
for (int i=1; i<=n;i++)
scanf ("%d",&v[i]);
pred[n]=n;
in=n;
sf=n;
smax=v[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];
}
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;
}