Pagini recente » Cod sursa (job #641869) | Cod sursa (job #2832248) | Cod sursa (job #2433737) | Cod sursa (job #1140558) | Cod sursa (job #1499114)
#include <stdio.h>
int a[6000001], b[6000001];
int n;
int maxs,maxp;
int main()
{
maxs=-2000000000;
FILE *fin,*fout;
fin=fopen("ssm.in","r");
fout=fopen("ssm.out","w");
fscanf(fin,"%d",&n);
for(int i=1;i<=n;i++)
{
fscanf(fin,"%d",&a[i]);
}
b[1]=a[1];
for(int i=2;i<=n;i++)
{
if(a[i]+b[i-1]>0&&b[i-1]>0)
{
b[i]=a[i]+b[i-1];
}
else
{
b[i]=a[i];
}
}
for(int i=1;i<=n;i++)
{
if(maxs<b[i])
{
maxp=i;
maxs=b[i];
}
}
b[0]=-1;
fprintf(fout,"%d ",maxs);
for(int i=maxp;i>=0;i--)
{
if(b[i]<0)
{
fprintf(fout,"%d %d\n",i+1,maxp);
break;
}
}
}