#include<bits/stdc++.h>
#define ll long long int
using namespace std;
ll dp[2000008];
ll a[2000008];
int main () {
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
// #ifndef ONLINE_JUDGE
// freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
// freopen("error.txt" , "w" , stderr);
// #endif
ll n, k;
cin >> n >> k;
for (ll i = 0; i < n; i++) {
cin >> a[i];
}
priority_queue<pair<ll, ll>> pq;
for (ll i = 0; i < k; i++) {
dp[i] = a[i];
pq.push({a[i], i});
}
ll size = ceil(n / (k * 1.0));
for (ll i = 1; i < size; i++) {
pair<ll, ll> p_max1 = pq.top();
pq.pop();
pair<ll, ll> p_max2 = pq.top();
pq.pop();
pq = priority_queue<pair<ll, ll>>();
for (ll j = k * i; j < n && j < k * i + k; j++) {
if (j - p_max1.second != k) {
// use max_1
dp[j] = a[j] + p_max1.first;
} else {
// use max_2
dp[j] = a[j] + p_max2.first;
}
pq.push({dp[j], j});
}
}
ll max_sum = INT_MIN;
for (ll i = 0; i < n; i++) {
max_sum = max(max_sum, dp[i]);
}
cout << max(max_sum, 0ll) << "\n";
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBsbCBsb25nIGxvbmcgaW50CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpsbCBkcFsyMDAwMDA4XTsKbGwgYVsyMDAwMDA4XTsKCmludCBtYWluICgpIHsKCglpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKCWNpbi50aWUoMCk7Cgljb3V0LnRpZSgwKTsKCi8vICNpZm5kZWYgT05MSU5FX0pVREdFCi8vIAlmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKLy8gCWZyZW9wZW4oIm91dHB1dC50eHQiLCAidyIsIHN0ZG91dCk7Ci8vIAlmcmVvcGVuKCJlcnJvci50eHQiICwgInciICwgc3RkZXJyKTsKLy8gI2VuZGlmCgoKCWxsIG4sIGs7CgljaW4gPj4gbiA+PiBrOwoKCWZvciAobGwgaSA9IDA7IGkgPCBuOyBpKyspIHsKCQljaW4gPj4gYVtpXTsKCX0KCgoJcHJpb3JpdHlfcXVldWU8cGFpcjxsbCwgbGw+PiBwcTsKCWZvciAobGwgaSA9IDA7IGkgPCBrOyBpKyspIHsKCQlkcFtpXSA9IGFbaV07CgkJcHEucHVzaCh7YVtpXSwgaX0pOwoJfQoKCWxsIHNpemUgPSBjZWlsKG4gLyAoayAqIDEuMCkpOwoJZm9yIChsbCBpID0gMTsgaSA8IHNpemU7IGkrKykgewoJCXBhaXI8bGwsIGxsPiBwX21heDEgPSBwcS50b3AoKTsKCQlwcS5wb3AoKTsKCQlwYWlyPGxsLCBsbD4gcF9tYXgyID0gcHEudG9wKCk7CgkJcHEucG9wKCk7CgoJCXBxID0gcHJpb3JpdHlfcXVldWU8cGFpcjxsbCwgbGw+PigpOwoKCQlmb3IgKGxsIGogPSBrICogaTsgaiA8IG4gJiYgaiA8IGsgKiBpICsgazsgaisrKSB7CgoJCQlpZiAoaiAtIHBfbWF4MS5zZWNvbmQgIT0gaykgewoJCQkJLy8gdXNlIG1heF8xCgkJCQlkcFtqXSA9IGFbal0gKyBwX21heDEuZmlyc3Q7CgkJCX0gZWxzZSB7CgkJCQkvLyB1c2UgbWF4XzIKCQkJCWRwW2pdICA9IGFbal0gKyBwX21heDIuZmlyc3Q7CgkJCX0KCgkJCXBxLnB1c2goe2RwW2pdLCBqfSk7CgkJfQoJfQoKCWxsIG1heF9zdW0gPSBJTlRfTUlOOwoJZm9yIChsbCBpID0gMDsgaSA8IG47IGkrKykgewoJCW1heF9zdW0gPSBtYXgobWF4X3N1bSwgZHBbaV0pOwoJfQoKCWNvdXQgPDwgbWF4KG1heF9zdW0sIDBsbCkgPDwgIlxuIjsKCglyZXR1cm4gMDsKfQ==