program pdgs;
var a:array[1..125,1..125]of integer;
b:array[1..125]of integer;
x,y,z,n,r,o,j,c,k:integer;
begin
readln(n,r);
for x:=1 to n do read(b[x]);
for x:=1 to n-1 do
for y:=x+1 to n do
if b[x]>b[y] then begin
z:=b[x];
b[x]:=b[y];
b[y]:=z;
end;
for x:=1 to n div r do
for y:=1 to r do
a[x,y]:=(x-1)*r+y;
if n mod r>0 then
for x:=1 to n mod r do
a[n+1,x]:=n div r*r+x;
z:=0;
for x:=1 to n do begin
z:=z+b[x];
y:=x mod r;
if x>r then begin
o:=0;
k:=x div r;
if y=0 then k:=k-1;
for j:=1 to k do begin
if y=0 then y:=y+r;
c:=a[j,y];
o:=o+b[c];
end;
z:=z+o;
end;
end;
writeln(z);
end.