import java.io.*; import java.util.*; public class Solution { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int k = in.nextInt(); PriorityQueue bulbs = new PriorityQueue<>(); Map map = new HashMap<>(); for (int i=0; i < n; i++) { long c = in.nextLong(); Bulb bulb = new Bulb(); bulb.index = i; bulb.cost = c; bulbs.add(bulb); map.put(i, bulb); } int sum = 0; while (!bulbs.isEmpty()) { Bulb bulb = bulbs.poll(); sum += bulb.cost; for (int i = Math.max(0, bulb.index - k); i < Math.min(n, bulb.index + k + 1); i++) { Bulb b = map.get(i); bulbs.remove(b); } } System.out.println(sum); } static class Bulb implements Comparable { int index; long cost; @Override public int compareTo(Bulb o) { if (cost == o.cost) return 0; return Math.abs((int) (cost - o.cost)); } } }