Pagini recente » Cod sursa (job #568714) | Cod sursa (job #1296215) | Cod sursa (job #1530967) | Cod sursa (job #1834533) | Cod sursa (job #205837)
Cod sursa(job #205837)
#include <stdio.h>
#define nmax 50001
int a[nmax],n,k;
int s[nmax],min[nmax],start,end,max,i;
int main(){
freopen("secv2.in","r",stdin);
freopen("secv2.out","w",stdout);
scanf("%d %d",&n,&k);
for(i=1;i<=n;++i)
scanf("%d", &a[i]),
s[i] = s[i-1] + a[i];
min[1] = 1;
for(i=2;i<=n;++i)
if(s[min[i-1]] > s[i])
min[i] = i;
else
min[i] = min[i-1];
max = -(1<<30);
// max = s[k];start = 1; end = k;
for(i=k; i<=n; ++i)
if(s[i] - s[min[i-k]] > max){
max = s[i] - s[min[i-k]];
start = min[i-k];
end = i;
}
printf("%d %d %d",start,end,max);
return 0;
}