小猴有
n 箱子,编号为
1∼n,第
i 个箱子中有
ai
枚金币。小猴需要按照箱子编号从小到大依次打开所有箱子,一个箱子都需要一把钥匙,现在有两种钥匙可以打开箱子:
一把好钥匙,需要花费
k 枚金币;
一把坏钥匙,不需要花费任何金币,但是会将每个未打开的箱子中的金币减半,包括已将打开的箱子。例如,使用一把坏钥匙即将打开第
i
个箱子,那么第
i∼n 个箱子的金币都会减半,即
[ai2],a+i+1=
[ai+12],……,ai+2
[ai+22]
一把钥匙只能用于一个箱子,不能重复使用。
小猴一共需要使用
n把钥匙,每个钥匙打开一个箱子。初始时,小猴没有金币,也没有钥匙,如果想要使用一把好钥匙打开箱子,就需要购买它。允许小猴当前所拥有的金币数量未负数,例如,小猴有
1
1 枚金币,可以买一把价值为
k=3
金币的好钥匙,那么小猴当前拥有的金币数量是
−2。
请你帮助小猴计算,按照箱子编号从小到大依次打开所有箱子能获取的最大金币数量。