Pagini recente » Cod sursa (job #1371916) | Cod sursa (job #39541) | Cod sursa (job #1741724) | Cod sursa (job #2226088) | Cod sursa (job #1573131)
#include <stdio.h>
using namespace std;
FILE*fin=fopen("ssm.in","r");
FILE*fout=fopen("ssm.out","w");
int stt,enn,sm,i,st,en,s,n,a[6000001],mi=-1000,poz;
int main()
{
fscanf(fin,"%d",&n);
for (i=1;i<=n;i++)fscanf(fin,"%d",&a[i]);
for (i=1;i<=n;i++)
{
s+=a[i];
if (a[i]>mi && a[i]<0){mi=a[i];poz=i;}
if (s<0){s=0;st=i+1;en=i+1;}
else {en++;if (s>sm){sm=s;stt=st;enn=en-1;}
else if (s==sm && (enn-stt)>(en-st)){sm=s;stt=st;enn=en-1;}}
}
if (s>0)fprintf(fout,"%d %d %d", sm , stt , enn);
else fprintf(fout,"%d %d %d", mi , poz , poz);
fclose(fin);
fclose(fout);
return 0;
}