//ALL HAIL MEGATRON using namespace std; #include #define wl(n) while(n--) #define fl(i,a,b) for(i=a; i=b; i--) #define scan(n) scanf("%d", &n) #define scans(s) scanf("%s", s) #define scanc(c) scanf("%c", &c) #define scanp(f) scanf("%f", &f) #define scanll(l) scanf("%lld", &l) #define scanllu(u) scanf("%llu", &u) #define print(n) printf("%d\n", n) #define prints(s) printf("%s\n", s) #define printc(c) printf("%c\n", c) #define printp(f) printf("%f\n", f) #define printll(l) printf("%lld\n", l) #define printllu(u) printf("%llu\n", u) #define nline printf("\n") #define mclr(strn) strn.clear() #define ignr cin.ignore() #define MOD 1000000007 #define ll long long int #define u64 unsigned long long int #define PB push_back #define inf 1000000000000005 ll dp[10004][2002],n,k,c[10005]; ll foo(ll ind, ll cur) { if(ind>=n && cur<=0) return 0; if(ind>=n && cur>0) return inf; if(cur>k) return inf; ll x = cur+k+1; ll& res = dp[ind][x]; if(res!=-1) return res; res = min(c[ind] + foo(ind+1, -k), foo(ind+1, cur+1)); return res; } int main() { memset(dp,-1,sizeof(dp)); scanll(n);scanll(k); ll i; fl(i,0,n) scanll(c[i]); printll(foo(0,0)); return 0; }