CF2218C.The 67th Permutation Problem

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

The 67th Permutation Problem

回到学校时,猕猴被他的朋友AG-88301冷淡地迎接,后者因为整晚对一个毫无防备的人唠叨自己在科拉茨猜想证明上的开创性工作和他6767个未被回应的恋爱对象而偷懒了作业。于是,按照惯例,AG-88301带着越来越少的感激和感激,让猕猴帮他做作业。这时猕猴受够了,转而让他的手下(你们!)帮他完成作业。

给定一个整数nn。你必须构造一个长度为3n3n的permutation^{\text{∗}},使得如果将置换划分为nn连续的块,包含33元素,这些块的medians^{\text{†}}总和会被最大化。

更正式地说,你必须构造一个长度为 3n3n 的置换pp,使得 $um_{i=0}^{n-1}\operatorname{median}(a_{3i+1},a_{3i+2},a_{3i+3})$ 最大化。如果存在多个可能的 pp,输出任意。

长度为nn的置换^{\text{∗}}A由11nnnn个不同整数组成的数组,顺序任意。例如,[2,3,1,5,4][2,3,1,5,4]是一个置换,但[1,2,2][1,2,2]不是置换(22在数组中出现两次),[1,3,4][1,3,4]也不是置换(n=3n=3但数组中有44)。

包含33元素的数组bb的中位数^{\text{†}}The是按非递减顺序排序后的第22元元素bb

输入

每个测试包含多个测试用例。第一行包含测试用例tt1t1041 \le t \le 10^4)。以下是测试用例的描述。

每个测试用例的第一行也是唯一一行包含一个整数nn1n1051 \leq n \leq 10^5)。

保证所有测试用例的总和3n3n不超过31053 \cdot 10^5

输出

对于每个测试用例,输出一个置换pp,使得连续块的中位数之和最大化。如果存在多个可能pp,输出任意。

注释

在第一个测试案例中,[1,3,4,2,5,6][1,3,4,2,5,6] 是一个可能的答案,因为$\operatorname{median}(1,3,4) + \operatorname{median}(2,5,6) = 3+5 = 8$,并且可以证明 88 是中位数的最大可能和。

在第二个测试案例中,[3,1,2][3,1,2]是一个可能的答案,因为n=1n=1时唯一可得的中位数和是22

样例

3
2
1
3
1 3 4 2 5 6 
3 1 2
5 2 4 8 3 9 7 1 6

在线编程 IDE

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