def bin_tree( pri , li_pri , len_li ):
    #pri: どこに入れていいかわからない値段
    #li_pri: 値段のリスト(昇順)
    #len_li: リストの長さ
    lo = 0
    hi = len_li - 1
    while hi - lo > 1:
        mid = lo + (hi - lo) // 2
        guess = li_pri[mid]
        if guess >= pri:
            hi = mid
        else:
            lo = mid
    return lo

I = input().split()
N = int(I[0])
M = int(I[1])
# N: 品物の数
# M: 割引券の数
# A: 品物の値段行列
A = list(map(int , input().split()))
A.sort()

while M > 0:
    M -= 1
    pri = A.pop( N - 1 )
    pri = pri // 2
    if len(A) == 0:
        ans = 0
    elif (pri < A[0] ):
        ans = 0
    else:
        ans = bin_tree( pri , A , N - 1 ) + 1
    # ans: pri以上となる値段のうち最小のインデックス
    A[ans:ans] = [pri]    

F_pri = 0
for i in range(N):
    F_pri += A[i]
print(F_pri) def bin_tree( pri , li_pri , len_li ):
    #pri: どこに入れていいかわからない値段
    #li_pri: 値段のリスト(昇順)
    #len_li: リストの長さ
    lo = 0
    hi = len_li - 1
    while hi - lo > 1:
        mid = lo + (hi - lo) // 2
        guess = li_pri[mid]
        if guess >= pri:
            hi = mid
        else:
            lo = mid
    return lo bin_tree lo = 0 lo 0 hi = len_li - 1 hi len_li - 1 len_li 1 while hi - lo > 1:
        mid = lo + (hi - lo) // 2
        guess = li_pri[mid]
        if guess >= pri:
            hi = mid
        else:
            lo = mid
     hi - lo > 1 hi - lo hi lo 1 mid = lo + (hi - lo) // 2 mid lo + (hi - lo) // 2 lo (hi - lo) // 2 hi - lo hi lo 2 guess = li_pri[mid] guess li_pri[mid] li_pri mid if guess >= pri:
            hi = mid
        else:
            lo = mid
     guess >= pri guess pri hi = mid hi mid lo = mid lo mid return lo lo pri pri li_pri li_pri len_li len_li I = input().split() I input().split() ().split () input split N = int(I[0]) N int(I[0]) int I[0] I 0 M = int(I[1]) M int(I[1]) int I[1] I 1 A = list(map(int , input().split())) A list(map(int , input().split())) list map(int , input().split()) map int input().split() ().split () input split A.sort() A.sort A sort while M > 0:
    M -= 1
    pri = A.pop( N - 1 )
    pri = pri // 2
    if len(A) == 0:
        ans = 0
    elif (pri < A[0] ):
        ans = 0
    else:
        ans = bin_tree( pri , A , N - 1 ) + 1
    # ans: pri以上となる値段のうち最小のインデックス
    A[ans:ans] = [pri]     M > 0 M 0 M -= 1 M 1 pri = A.pop( N - 1 ) pri A.pop( N - 1 ) A.pop A pop N - 1 N 1 pri = pri // 2 pri pri // 2 pri 2 if len(A) == 0:
        ans = 0
    elif (pri < A[0] ):
        ans = 0
    else:
        ans = bin_tree( pri , A , N - 1 ) + 1
    # ans: pri以上となる値段のうち最小のインデックス
     len(A) == 0 len(A) len A 0 ans = 0 ans 0 elif (pri < A[0] ):
        ans = 0
     pri < A[0] pri A[0] A 0 ans = 0 ans 0 ans = bin_tree( pri , A , N - 1 ) + 1 ans bin_tree( pri , A , N - 1 ) + 1 bin_tree( pri , A , N - 1 ) bin_tree pri A N - 1 N 1 1 A[ans:ans] = [pri] A[ans:ans] A ans:ans ans ans [pri] pri F_pri = 0 F_pri 0 for i in range(N):
    F_pri += A[i] i range(N) range N F_pri += A[i] F_pri A[i] A i print(F_pri) print F_pri N = int(I[0]) int(I[0]) N M = int(I[1]) int(I[1]) M F_pri += A[i] A[i] F_pri A = list(map(int , input().split())) list(map(int , input().split())) A ans = 0 0 ans M -= 1 1 M pri = pri // 2 pri // 2 pri F_pri = 0 0 F_pri def bin_tree( pri , li_pri , len_li ):
    #pri: どこに入れていいかわからない値段
    #li_pri: 値段のリスト(昇順)
    #len_li: リストの長さ
    lo = 0
    hi = len_li - 1
    while hi - lo > 1:
        mid = lo + (hi - lo) // 2
        guess = li_pri[mid]
        if guess >= pri:
            hi = mid
        else:
            lo = mid
    return lo def bin_tree( pri , li_pri , len_li ):
    #pri: どこに入れていいかわからない値段
    #li_pri: 値段のリスト(昇順)
    #len_li: リストの長さ
    lo = 0
    hi = len_li - 1
    while hi - lo > 1:
        mid = lo + (hi - lo) // 2
        guess = li_pri[mid]
        if guess >= pri:
            hi = mid
        else:
            lo = mid
    return lo bin_tree ans = bin_tree( pri , A , N - 1 ) + 1 bin_tree( pri , A , N - 1 ) + 1 ans I = input().split() input().split() I pri = A.pop( N - 1 ) A.pop( N - 1 ) pri ans = 0 0 ans
def bin_tree( pri , li_pri , len_li ):
    #pri: どこに入れていいかわからない値段
    #li_pri: 値段のリスト(昇順)
    #len_li: リストの長さ
    lo = 0
    hi = len_li - 1
    while hi - lo > 1:
        mid = lo + (hi - lo) // 2
        guess = li_pri[mid]
        if guess >= pri:
            hi = mid
        else:
            lo = mid
    return lo

I = input().split()
N = int(I[0])
M = int(I[1])
# N: 品物の数
# M: 割引券の数
# A: 品物の値段行列
A = list(map(int , input().split()))
A.sort()

while M > 0:
    M -= 1
    pri = A.pop( N - 1 )
    pri = pri // 2
    if len(A) == 0:
        ans = 0
    elif (pri < A[0] ):
        ans = 0
    else:
        ans = bin_tree( pri , A , N - 1 ) + 1
    # ans: pri以上となる値段のうち最小のインデックス
    A[ans:ans] = [pri]    

F_pri = 0
for i in range(N):
    F_pri += A[i]
print(F_pri)