B4570 [合肥市初中组 2025 T2] 等差数列
题目背景
民间数据。
题目描述
给定一个长度为 $n$ 的正整数数列 $a_1, a_2, \dots, a_n$。
我们称一个数列是**好的**,当且仅当它可以通过重新排列变成一个等差数列。
例如,数列 $[1, 5, 4, 2, 3]$ 是好的,因为它能重排为等差数列 $[1, 2, 3, 4, 5]$。而数列 $[1, 4, 3]$ 不是好的,因为无论怎么重排都无法形成等差数列。
你可以对给定的数列使用**至多一次**魔法:选择数列中的某个元素 $x$,将其变为 $x+1$ 或 $x-1$。
请你判断,能否通过至多一次魔法,使得给定的数列变成好的。
输入格式
**本题有多组测试数据。**
第一行包含一个正整数 $T$ —— 表示数据组数。
对于每组测试数据:
* 第一行包含一个正整数 $n$ —— 表示数列的长度。
* 第二行包含 $n$ 个正整数 $a_1, a_2, \dots, a_n$ —— 表示数列中的每个元素。
输出格式
对于每组测试数据,输出一行一个字符串 `Yes` 或 `No`,表示能否通过至多一次魔法使得这个数列变成好的。
说明/提示
#### ****样例解释****
* 对于第 $1$ 组测试数据:可以重排为 $[1, 2, 3, 4, 5]$,本身已经是一个好的数列,不需要使用魔法。
* 对于第 $2$ 组测试数据:可以将 $1$ 变成 $2$,然后就可以重排为 $[2, 3, 4]$,是一个等差数列。
* 对于第 $3$ 组测试数据:可以将其中一个 $3$ 变成 $2$,然后就可以重排为 $[1, 2, 3]$,是一个等差数列。
* 对于第 $4$ 组测试数据:无论如何使用魔法都不能使得数列变成好的。
* 对于第 $5$ 组测试数据:可以将 $11$ 变成 $10$,然后就可以重排为 $[2, 4, 6, 8, 10, 12, 14]$,是一个等差数列。
#### ****其它样例说明****
* **样例 $2$**:见选手附加文件目录下的 `list/list2.in` 与 `list/list2.ans`。该样例满足测试点 $4 \sim 6$ 的约束条件。
* **样例 $3$**:见选手附加文件目录下的 `list/list3.in` 与 `list/list3.ans`。该样例满足测试点 $9 \sim 10$ 的约束条件。
#### ****数据范围****
定义 $\sum n$ 为单个测试点内所有测试数据 $n$ 的总和。
对于所有测试数据,保证 $1 \le a_i \le 10^9$。
各测试点的附加限制如下表所示:
| 测试点编号 | $\sum n \le$ | 特殊性质 |
| :---: | :---: | :---: |
| $1 \sim 3$ | $10^3$ | 无 |
| $4 \sim 6$ | $10^6$ | $A$ |
| $7 \sim 8$ | $10^6$ | $B$ |
| $9 \sim 10$ | $10^6$ | 无 |
* **特殊性质 $A$**:每组数据中数列的极差(最大值减去最小值)不超过 $1$。
* **特殊性质 $B$**:每组数据中数列的所有元素互不相同。