题库练习 XOR Convenience (Easy Version)
← 上一题 下一题 →

A16562 | XOR Convenience (Easy Version)

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

**这是该问题的*简单*版本。两个版本的区别在于,在这个版本中,约束条件为 $2 \le i \le n-1$。请注意,困难版本的正确解法不一定是简单版本的正确解法。**

给定一个自然数 $n$。找到一个长度为 $n$ 的排列 $ ^{*} p$,使得对于每个 $i$(${\color{red} 2 \le i \le n-1}$),都存在一个 $j$(${\color{red}i \le j \le n}$)满足 $p_i = p_j \oplus i^{\ \dagger}$。

可以证明,在问题的约束条件下,至少存在一个满足条件的排列 $p$。

$^{*}$ 一个长度为 $n$ 的排列是由 $1$ 到 $n$ 的 $n$ 个不同整数按任意顺序组成的数列。例如,$[2,3,1,5,4]$ 是一个排列,但 $[1,2,2]$ 不是排列($2$ 在数列中出现两次),$[1,3,4]$ 也不是排列($n=3$ 但数列中有 $4$)。

$^{\dagger}$ $\oplus$ 表示按位异或操作。

输入格式

每个测试数据包含多个测试用例。第一行包含测试用例的数量 $t$ ($1 \le t \le 10^4$)。每个测试用例的描述如下。

每个测试用例只有一行,包含一个整数 $n$ ($3 \leq n \leq 2 \cdot 10^5$)——排列的长度。

保证所有测试用例中 $n$ 的和不超过 $2\cdot 10^5$ 。

输出格式

对于每个测试用例,输出 $n$ 个整数 $p_1,p_2,\ldots,p_n$ ——排列 $p$ 。

如果有多种合法方案,你可以输出其中的任何一个。

输入输出样例

输入 #1
2
3
6
输出 #1
2 1 3
3 6 2 5 1 4
C++ 编辑器
输入
输出