P12160 [蓝桥杯 2025 省 Java B] 2 的幂
题目描述
小明很喜欢 $2$ 的幂,所以他想对一个长度为 $n$ 的正整数数组 $\{a_1, a_2, \dots, a_n\}$ 进行改造。他可以进行如下操作任意多次(可以是 $0$ 次):任选一个数 $a_i$ 加上任意正整数,但不能使得加完之后的结果超过 $10^5$。
在操作任意次后,小明希望所有数的乘积是 $2^k$ 的倍数。他想知道总共需要加的数的总和至少是多少?
输入格式
输入共两行。
- 第一行为两个正整数 $n, k$。
- 第二行为 $n$ 个由空格分开的正整数 $a_1, a_2, \dots, a_n$。
输出格式
输出共 $1$ 行,一个整数表示答案。如果不能满足条件,输出 $-1$。
说明/提示
### 样例说明
将三个数分别加到 $24, 16, 4$,它们的乘积为 $1536 = 2^9 \times 3$,加的数的总和为 $5 + 6 + 1 = 12$。
### 评测用例规模与约定
- 对于 $20\%$ 的评测用例,$n, k \leq 10$。
- 对于 $100\%$ 的评测用例,$1\leq n \leq 500$,$1\leq k \leq 5000$,$1\leq a_i \leq 100000$。