Pagini recente » Cod sursa (job #3188890) | Cod sursa (job #3145357) | Cod sursa (job #2314203) | Cod sursa (job #454722) | Cod sursa (job #2028912)
#include <stdio.h>
using namespace std;
FILE *fi=fopen("ssm.in","r");
FILE *fo=fopen("ssm.out","w");
int n,i,x,BEST[6000001],START[6000001],rez,first,last;
int main()
{
fscanf(fi,"%d",&n);
fscanf(fi,"%d",&x);
BEST[1]=x;
START[1]=1;
for(i=2;i<=n;i++)
{
fscanf(fi,"%d",&x);
if(BEST[i-1]+x>=x)
{
BEST[i]=BEST[i-1]+x;
START[i]=START[i-1];
}
else
{
BEST[i]=x;
START[i]=i;
}
}
rez=BEST[1];
first=1;
last=1;
for(i=1;i<=n;i++)
if(rez<BEST[i])
{
rez=BEST[i];
first=START[i];
last=i;
}
fprintf(fo,"%d %d %d",rez,first,last);
fclose(fi);
fclose(fo);
return 0;
}