编程题
### 问题描述
给定一个长度为 $n$ 的数组 $a$ ,每次操作你可以将其中一个数 $a_i$ 变为 $\lfloor \frac{a_i}{2} \rfloor$ (向下取整),你可以执行零次或任意次操作,使得 $a$ 中至少有 $k$ 个数相等,求实现目标所需的最小操作次数。
### 输入格式
第一行输入两个整数 $n$ 和 $k$ 。
第二行输入 $n$ 个整数 $a_i$,用空格隔开。
数据范围保证 $1 \leq k \leq n \leq 2 \times 10^5$, $1 \leq a_i \leq 2 \times 10^5$。
### 输出格式
输出一个整数,表示实现目标的最小操作次数。
### 样例输入
```
5 2
1 2 3 4 5
```
### 样例输出
```
1
```
### 说明
将 $2$ 变为 $1$ 后,数组中存在了两个相同元素,所以答案为 $1$ 。