Pagini recente » Cod sursa (job #2959527) | Cod sursa (job #1932765) | Cod sursa (job #1466901) | Cod sursa (job #120330) | Cod sursa (job #130347)
Cod sursa(job #130347)
#include<stdio.h>
#define nmax 50010
long long s,i,j,k,v[3][nmax],n;
inline int max(int a, int b)
{
if(a>b)
return a;
else
return b;
}
int main()
{
freopen("secv2.in","r",stdin);
freopen("secv2.out","w",stdout);
scanf("%lld %lld",&n,&k);
for(i=1;i<=n;i++)
{
v[2][i]=i;
scanf("%lld",&v[1][i]);
}
if(n==k)
{
for(i=1;i<=n;i++)
s+=v[1][i];
printf("1 %lld %lld\n",n,s);
}
else
{
for(i=2;i<=n;i++)
{
v[1][i]=max(v[1][i-1]+v[1][i],v[1][i]);
if(v[1][i-1]+v[1][i]>v[1][i])
v[2][i]=v[2][i-1];
}
long long in,fin,smax=-nmax;
for(i=1;i<=n;i++)
if(smax<v[1][i]&&i-v[2][i]+1>=k)
{
smax=v[1][i];
in=v[2][i];
fin=i;
}
printf("%lld %lld %lld",in,fin,smax);
}
return 0;
}