# 不用优先队列优化,过12/13 n,m=map(int,input().split()) a=[0]+list(map(int,input().split())) f=[0x3f3f3f3f]*(n+10) f[0]=0 for i in range(1,n+1): for j in range(max(0,i-m),i+1): f[i]=min(f[i],f[j]+a[i]) print(min(f[max(0,(n-m+1)):(n+1)]))