https://codeforces.com/contest/1816/problem/B
题目大意:在一个2*n的网格中,每次移动可以向右移动1格,或者向下移动1格,从起点(1,1)要移动到终点(2,n),费用为经过的所有数字的交错和,要求在每个网格中填入1到2n的数字(每个数字出现且仅出现1次),使得所有可行路径的最小费用最大
n<=2<=1e5
思路:要想交错和最大,就要相邻数的差尽可能大,那么我们就在起点填上最大的数2n,因为n是偶数,所以终点一定是直接加在费用里的,就填次大的数然后相邻数都是最小的数既1,2,1的相邻数应该是当前剩下的最大数,既2n-2,2n-3,以此类推我们可以发现一种可行的构造即为第一行为12,2,10,8,4,6这样的大小交替的偶数,第二行是1,9,3,7,5,11这样除了终点以外大小交替的奇数
for t in range(int(input())):
n=int(input())
a=[2*n-i if i%2==0 else i+1 for i in range(n)]
b=[i+1 if i%2==0 else 2*n-i-2 for i in range(n-1)]
b.append(2*n-1)
print(*a,*b)