AT_abc117_c [ABC117C] Streamline

题目描述

在数轴上,有 $N$ 个棋子,你需要用这 $N$ 个棋子一个人进行游戏。 一开始,你可以将这些棋子分别放在任意整数坐标上。 此时,允许多个棋子放在同一个坐标上。 你需要通过反复进行如下的“移动”操作,使得坐标 $X_1, X_2, ..., X_M$ 这 $M$ 个点都被至少一个棋子访问过。 **移动操作**:选择一个棋子,假设它当前在坐标 $x$,你可以将它移动到 $x+1$ 或 $x-1$。 注意,棋子最初放置的位置也视为已经访问过。 请你求出,为了达成目标,所需的最小移动次数。

输入格式

输入通过标准输入按以下格式给出。 > $N$ $M$ $X_1$ $X_2$ $...$ $X_M$

输出格式

输出达成目标所需的最小移动次数。

说明/提示

### 限制条件 - 所有输入均为整数。 - $1 \leq N \leq 10^5$ - $1 \leq M \leq 10^5$ - $-10^5 \leq X_i \leq 10^5$ - $X_1, X_2, ..., X_M$ 均互不相同。 ### 样例解释 1 按照以下步骤移动 $5$ 次可以达成目标,并且这是最小次数。 - 首先将 $2$ 个棋子分别放在坐标 $1$ 和坐标 $10$。 - 将坐标 $1$ 的棋子移动到坐标 $2$。 - 将坐标 $10$ 的棋子依次移动到 $11$、$12$、$13$、$14$。 - 总共移动 $5$ 次。 由 ChatGPT 4.1 翻译