AT_abc414_d [ABC414D] Transmission Mission
题目描述
在数轴上有 $N$ 栋房子,编号为 $1$ 到 $N$。第 $i$ 栋房子位于坐标 $X_i$。可能有多栋房子位于同一坐标。
你需要在数轴上的任意实数坐标处放置 $M$ 个基站,并为每个基站设置一个非负整数的**电波强度**。
对于某个基站,如果其电波强度为 $x$,则该基站能覆盖的房子为与其距离不超过 $\displaystyle\frac{x}{2}$ 的房子。特别地,当 $x=0$ 时,该基站只能覆盖与其在同一坐标的房子。
请你选择基站的位置和电波强度,使得每一栋房子都至少被一个基站覆盖,并且所有基站的电波强度之和最小。输出这个最小的电波强度总和。
可以证明,对于任意满足条件的输入,答案都是整数。
输入格式
输入通过标准输入给出,格式如下:
> $N$ $M$
> $X_1$ $X_2$ $\dots$ $X_N$
输出格式
请输出一个整数,表示最小的电波强度总和。
说明/提示
## 限制条件
- $1 \leq M \leq N \leq 5 \times 10^5$
- $1 \leq X_i \leq 10^{12}$($1 \leq i \leq N$)
- 输入的所有数值均为整数。
## 样例解释 1
如下图所示,放置 $3$ 个基站可以覆盖所有房子:
- 在坐标 $7.5$ 处放置一个电波强度为 $5$ 的基站,该基站可以覆盖房子 $1,2,5$。
- 在坐标 $14.5$ 处放置一个电波强度为 $1$ 的基站,该基站可以覆盖房子 $3,6,7$。
- 在坐标 $20$ 处放置一个电波强度为 $0$ 的基站,该基站可以覆盖房子 $4$。
此时电波强度总和为 $6$。无法通过更小的电波强度总和覆盖所有房子,因此输出 $6$。
由 ChatGPT 4.1 翻译