#include <fstream>
#include <algorithm>
#include <vector>
#include <cstring>
#include <deque>
#include <unordered_set>
#include <unordered_map>
#include <bitset>
#include <climits>
#include <queue>
#define MOD 666013
using namespace std;
ifstream cin("deque.in") ;
ofstream cout("deque.out") ;
deque<int> dq ;
int v[5000009] ;
int main()
{
int n, k ; long long s = 0 ;
cin >> n >> k ;
for(int f = 1, a ; f <= n ; f ++)
{
cin >> v[f] ;
while(!dq.empty() && v[f] <= v[dq.back()])dq.pop_back() ;
dq.push_back(f) ;
while(dq.front() <= f - k)dq.pop_front() ;
if(f >= k)s += v[dq.front()] ;
}
cout << s ;
return 0 ;
}