Problem G: G: 爬山

"
Time Limit $1$ 秒/Second(s) Memory Limit $512$ 兆字节/Megabyte(s)
提交总数 $9$ 正确数量 $7$
裁判形式 标准裁判/Standard Judge 我的状态 尚未尝试
难度 分类标签

小明这天在参加公司团建,团建项目是爬山。在 x 轴上从左到右一共有 n 座山,第 i 座山的高度为 hi。他们需要从左到右依次爬过所有的山,需要花费 的体力值为 S = h1+h2+h3+.....+hn

然而小明偷偷学了魔法,可以降低一些山的高度。他掌握两种魔法,第一 种魔法可以将高度为 H 的山的高度变为 ⌊ √ H⌋,可以使用 P 次;第二种魔法可 以将高度为 H 的山的高度变为 ⌊ H /2 ⌋,可以使用 Q 次。并且对于每座山可以按任 意顺序多次释放这两种魔法。 

小明想合理规划在哪些山使用魔法,使得爬山花费的体力值最少。请问最优情况下需要花费的体力值是多少? 


输入共两行。

第一行为三个整数 n,P,Q。 

第二行为 n 个整数 h1,h2,. . . ,hn

对于 20% 的评测用例,保证 n ≤ 8,P = 0。 

对于 100% 的评测用例,保证 n ≤ 100000,0 ≤ P ≤ n,0 ≤ Q ≤ n, 0 ≤ hi ≤ 100000。 

输出共一行,一个整数代表答案。
4 1 1
4 5 6 49
18

将第四座山变为 ⌊ √ 49⌋ = 7,然后再将第四座山变为 ⌊ 7 /2 ⌋ = 3。 

体力值为 4 + 5 + 6 + 3 = 18。