编程题
### 问题描述 小蓝在玩一款游戏,为了让游戏中的自己有更强大的力量,他需要吸取更多的经验值来升级。 小蓝面前有从 $1$ 到 $n$ 编号的共 $n$ 个经验果,编号为 $i$ 的经验果含有经验值 $a_i$ 。然而小蓝并不满足只吃下这些经验果,他学会了一项法术,每次使用这个法术,他就可以从经验果中挑选编号不同的任意两个,设为 $i,j$ ( $1\leq{i,j}\leq{n}$ ),然后令 $x=a_i,y=a_j$ ,最后使得 $a_i=x \And y,a_j=x|y$ (其中 $\And$ 表示位与运算符, $|$ 表示位或运算符 )。 小蓝可以使用这项法术无限次。在小蓝使经验果的经验值达到自己想要的效果后,小蓝将对每个经验果使用平方膨胀剂后服下它们,因此小蓝吃下所有的经验果后经验值会增长 $\sum_{i=1}^{n}a_{i}^2$ 。 小蓝获得经验值后可以升级,每升一级需要 $k$ 经验值,若经验值不够升级则无法升级。 小蓝想让你帮他求出,在他使用任意次法术并吃下经验果后,他最多能升到多少级(小蓝初始时经验值和等级均为 $0$ )。 ### 输入格式 第一行包含两个整数 $n,k$ ,表示经验果的个数和每升一级需要的经验值。 第二行包含 $n$ 个整数 $a_1,a_2,\dots,a_n$ ,表示经验果的经验值。 ### 输出格式 输出一个整数,表示小蓝最多升到几级。 ### 样例输入 ``` 4 20 1 6 7 3 ``` ### 样例输出 ``` 5 ``` ### 评测数据规模 对于所有评测数据, $1\leq{n}\leq{10^5 },0\leq{a_i}\leq{2^{20} },1\leq{k}\leq{10^9 }$ 。
查看答案
赣ICP备20007335号-2