CF1754B Kevin and Permutation
题目描述
在生日时,Kevin 收到了一份礼物:由 $1, 2, 3, \ldots, n$ 组成的两两不同的数字集合。
他打算将这些数字排列,使得相邻两个数字的最小绝对差值尽可能大。更正式地说,如果他将数字按顺序排列为 $p_1, p_2, \ldots, p_n$,他希望最大化 $\min \limits_{i=1}^{n - 1} \lvert p_{i + 1} - p_i \rvert$ 的值,其中 $|x|$ 表示 $x$ 的绝对值。
请你帮助 Kevin 实现这个目标。
输入格式
每个测试点包含多组测试用例。第一行包含一个整数 $t$($1 \le t \le 100$),表示测试用例的数量。接下来每个测试用例包含一行,一个整数 $n$($2 \le n \leq 1000$),表示集合的大小。
输出格式
对于每个测试用例,输出一行,包含 $n$ 个不同的整数 $p_1, p_2, \ldots, p_n$($1 \le p_i \le n$),表示最大化相邻元素最小绝对差值的排列。
更正式地说,你需要输出一个排列 $p$,使得 $\min \limits_{i=1}^{n - 1} \lvert p_{i + 1} - p_i \rvert$ 的值最大。
如果有多种最优解,输出任意一种即可。
说明/提示
在第一个测试用例中,相邻元素的最小绝对差值为 $\min \{\lvert 4 - 2 \rvert, \lvert 1 - 4 \rvert, \lvert 3 - 1 \rvert \} = \min \{2, 3, 2\} = 2$。很容易证明这个答案是最优的。
在第二个测试用例中,数字 $1, 2, 3$ 的任意排列都是最优解。相邻元素的最小绝对差值为 $1$。
由 ChatGPT 4.1 翻译