CF1754B.Kevin and Permutation

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

Kevin and Permutation

题目描述

在生日时,Kevin 收到了一份礼物:由 1,2,3,,n1, 2, 3, \ldots, n 组成的两两不同的数字集合。

他打算将这些数字排列,使得相邻两个数字的最小绝对差值尽可能大。更正式地说,如果他将数字按顺序排列为 p1,p2,,pnp_1, p_2, \ldots, p_n,他希望最大化 $\min \limits_{i=1}^{n - 1} \lvert p_{i + 1} - p_i \rvert$ 的值,其中 x|x| 表示 xx 的绝对值。

请你帮助 Kevin 实现这个目标。

输入格式

每个测试点包含多组测试用例。第一行包含一个整数 tt1t1001 \le t \le 100),表示测试用例的数量。接下来每个测试用例包含一行,一个整数 nn2n10002 \le n \leq 1000),表示集合的大小。

输出格式

对于每个测试用例,输出一行,包含 nn 个不同的整数 p1,p2,,pnp_1, p_2, \ldots, p_n1pin1 \le p_i \le n),表示最大化相邻元素最小绝对差值的排列。

更正式地说,你需要输出一个排列 pp,使得 $\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,31, 2, 3 的任意排列都是最优解。相邻元素的最小绝对差值为 11

由 ChatGPT 4.1 翻译

样例

2
4
3
2 4 1 3
1 2 3

在线编程 IDE

建议全屏模式获得最佳体验