Pagini recente » Cod sursa (job #2819664) | Cod sursa (job #2798846) | Cod sursa (job #2782884) | Cod sursa (job #2148965) | Cod sursa (job #359750)
Cod sursa(job #359750)
#include<cstdio>
int s[50001];
int main()
{
int st,sum,smax,n,k,i,j,p1,p2;
freopen("secv2.in","r",stdin);
freopen("secv2.out","w",stdout);
scanf("%d%d",&n,&k);
s[0]=0;
p1=1; p2=1; sum=0; smax=0;
for(i=1;i<=n;++i)
{
scanf("%d",&s[i]);
sum+=s[i];
if(i>=k && sum>smax)
{
smax=sum;
p2=i;
}
}
for(i=2;i<=n-k+1;++i)
{
sum-=s[i-1];
if(p2-i+1>=k && s[i-1]<0)
{
smax=sum;
p1=i;
}
st=sum;
for(j=n;j>i+k-1;--j)
{
sum-=s[j];
if(sum>smax)
{
smax=sum;
p1=i;
p2=j-1;
}
}
sum=st;
}
printf("%d %d %d\n",p1,p2,smax);
return 0;
}
//Note to self: Cannon highly effective against secv2.