#P793. 对折券

对折券

题目描述

小爱需要将 nn 件商品全部买回家,其中第 ii 件商品的价格为 aia_i

小爱有 mm 张对折券,对每件商品,可以使用任意多张对折券,效果是叠加的。若一件商品原价是 AA,对该商品使用 kk 张对折券后,则该商品的价格将变成 A2k\lfloor\frac{A}{2^k}\rfloor。其中 \lfloor\rfloor是向下取整的意思。

请计算应该如何分配这些对折券才能使得打折后的商品总价之和变得最小。

输入格式

  • 第一行:两个整数表示 nnmm
  • 第二行:nn 个整数 a1,a2,,ana_1,a_2,\dots, a_n 表示各个商品的原价

输出格式

  • 单个整数表示答案
3 2
50 100 300
225

样例解释 1

全部同在300上

数据范围

  • 30%30\% 的数据,1n101\leq n\leq 101m101\leq m\leq 10
  • 60%60\% 的数据,1n5001\leq n\leq 5001m5001\leq m\leq 500
  • 100%100\% 的数据,1n200,0001\leq n\leq 200,0001m200,0001\leq m\leq 200,000
  • 1ai1,000,000,0001\leq a_i\leq 1,000,000,000