Pagini recente » Monitorul de evaluare | Borderou de evaluare (job #1568868) | Cod sursa (job #1463293) | Cod sursa (job #43281) | Cod sursa (job #862974)
Cod sursa(job #862974)
#include<iostream>
#include<cstdio>
#define maxn 6000050
using namespace std;
int a[maxn],best[maxn],n,st,dr,i,st_f,bestsum;
FILE *f,*g;
int main()
{
f=fopen("ssm.in","r");
g=fopen("ssm.out","w");
fscanf(f,"%d%d",&n,&a[1]);
bestsum=a[1];
for(i=1;i<=n;++i)
{
if(i!=1)
fscanf(f,"%d",&a[i]);
best[i]=a[i];
if(best[i]<=best[i-1]+a[i])
best[i]=best[i-1]+a[i];
else
st=i;
if(bestsum<best[i])
bestsum=best[i],dr=i,st_f=st;
}
fprintf(g,"%d %d %d\n",bestsum,st_f,dr);
return 0;
}