#7170. 第 67 道排列题

第 67 道排列题

题目背景

回到学校后,猕猴又被朋友 AG-88301 拉住了。AG-88301 昨晚忙着向一位陌生人讲述自己对考拉兹猜想的“突破性研究”,以及第 6767 次没有回应的暗恋,结果忘记了写作业。

这一次,猕猴决定把这道作业交给你。

题目描述

给定一个整数 nn,请构造一个长度为 3n3n 的排列 pp。

将这个排列从左到右分成 nn 个连续的块,每块恰好包含 33 个元素。你需要使所有块的中位数之和最大,即最大化

$$\sum_{i=0}^{n-1}\operatorname{median}(p_{3i+1},p_{3i+2},p_{3i+3})。$$

如果有多种符合要求的排列,输出任意一种即可。

长度为 mm 的排列是一个由 11 到 mm 的所有整数各出现一次组成的序列。例如,[2,3,1,5,4][2,3,1,5,4] 是一个排列,而 [1,2,2][1,2,2] 和 [1,3,4][1,3,4] 都不是长度为 33 的排列。

三个数的中位数,是将这三个数按从小到大的顺序排序后,位于中间的数。例如,median⁡(5,2,4)=4\operatorname{median}(5,2,4)=4。

输入格式

第一行包含一个整数 tt(1≤t≤1041\le t\le 10^4),表示测试用例的数量。

接下来 tt 行,每行包含一个整数 nn(1≤n≤1051\le n\le 10^5)。

保证单个输入文件内所有测试用例的 3n3n 之和不超过 3×1053\times 10^5。

输出格式

对于每个测试用例,输出一行 3n3n 个整数,表示你构造的排列 pp。

该排列各连续块的中位数之和必须达到最大值。若有多种答案,输出任意一种即可。

样例

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

样例说明

第一组测试用例中,排列 [1,3,4,2,5,6][1,3,4,2,5,6] 的两个块分别为 [1,3,4][1,3,4] 和 [2,5,6][2,5,6],中位数之和为 3+5=83+5=8,可以证明这是最大值。

第二组测试用例中,只有一个块,包含 1,2,31,2,3,无论这三个数如何排列,中位数都为 22。

数据范围与限制

  • 时间限制:22 秒。
  • 内存限制:256256 MiB。
  • 1≤t≤1041\le t\le 10^4,1≤n≤1051\le n\le 10^5。
  • 每个输入文件中,∑3n≤3×105\sum 3n\le 3\times 10^5。