Pagini recente » Cod sursa (job #2337031) | Cod sursa (job #1932012) | Cod sursa (job #1842919) | Cod sursa (job #11109) | Cod sursa (job #39366)
Cod sursa(job #39366)
#include<stdio.h>
int n,k,i,s[50001],p[50001],l[50001],j,x,smax,inc,sf;
int main()
{freopen("secv2.in","r",stdin);
char buf[1000000];
setvbuf(stdin,buf,_IOFBF,1000000);
freopen("secv2.out","w",stdout);
scanf("%d %d",&n,&k);
for(i=1;i<=n;i++)
{scanf("%d",&x);
s[i]=s[i-1]+x;
if(p[i-1]+x>0){p[i]=p[i-1]+x;l[i]=l[i-1]+1;}
}
smax=s[k];inc=1;sf=k;
for(i=k+1;i<=n;i++)
if(s[i]-s[i-k]+p[i-k]>smax||(s[i]-s[i-k]+p[i-k]==smax&&sf-inc>i-k+l[i-k])) {smax=s[i]-s[i-k]+p[i-k];inc=i-k-l[i-k]+1;sf=i;}
printf("%d %d %d",inc,sf,smax);
fclose(stdout);
return 0;}