A12634. Magical Permutation
编程题
普及/提高-
知识点
题目描述
Kuro has just learned about permutations and he is really excited to create a new permutation type. He has chosen $n$ distinct positive integers and put all of them in a set $S$ . Now he defines a magical permutation to be:
- A permutation of integers from $0$ to $2^x - 1$ , where $x$ is a non-negative integer.
- The [bitwise xor](https://en.wikipedia.org/wiki/Bitwise_operation#XOR) of any two consecutive elements in the permutation is an element in $S$ .
Since Kuro is really excited about magical permutations, he wants to create the longest magical permutation possible. In other words, he wants to find the largest non-negative integer $x$ such that there is a magical permutation of integers from $0$ to $2^x - 1$ . Since he is a newbie in the subject, he wants you to help him find this value of $x$ and also the magical permutation for that $x$ .
- A permutation of integers from $0$ to $2^x - 1$ , where $x$ is a non-negative integer.
- The [bitwise xor](https://en.wikipedia.org/wiki/Bitwise_operation#XOR) of any two consecutive elements in the permutation is an element in $S$ .
Since Kuro is really excited about magical permutations, he wants to create the longest magical permutation possible. In other words, he wants to find the largest non-negative integer $x$ such that there is a magical permutation of integers from $0$ to $2^x - 1$ . Since he is a newbie in the subject, he wants you to help him find this value of $x$ and also the magical permutation for that $x$ .
输入格式
The first line contains the integer $n$ ( $1 \leq n \leq 2 \cdot 10^5$ ) — the number of elements in the set $S$ .
The next line contains $n$ distinct integers $S_1, S_2, \ldots, S_n$ ( $1 \leq S_i \leq 2 \cdot 10^5$ ) — the elements in the set $S$ .
The next line contains $n$ distinct integers $S_1, S_2, \ldots, S_n$ ( $1 \leq S_i \leq 2 \cdot 10^5$ ) — the elements in the set $S$ .
输出格式
In the first line print the largest non-negative integer $x$ , such that there is a magical permutation of integers from $0$ to $2^x - 1$ .
Then print $2^x$ integers describing a magical permutation of integers from $0$ to $2^x - 1$ . If there are multiple such magical permutations, print any of them.
Then print $2^x$ integers describing a magical permutation of integers from $0$ to $2^x - 1$ . If there are multiple such magical permutations, print any of them.
输入输出样例
输入 #1
3 1 2 3
输出 #1
2 0 1 3 2
输入 #2
2 2 3
输出 #2
2 0 2 1 3
输入 #3
4 1 2 3 4
输出 #3
3 0 1 3 2 6 7 5 4
输入 #4
2 2 4
输出 #4
0 0
输入 #5
1 20
输出 #5
0 0
输入 #6
1 1
输出 #6
1 0 1
说明/提示
In the first example, $0, 1, 3, 2$ is a magical permutation since:
- $0 \oplus 1 = 1 \in S$
- $1 \oplus 3 = 2 \in S$
- $3 \oplus 2 = 1 \in S$
Where $\oplus$ denotes [bitwise xor](https://en.wikipedia.org/wiki/Bitwise_operation#XOR) operation.
- $0 \oplus 1 = 1 \in S$
- $1 \oplus 3 = 2 \in S$
- $3 \oplus 2 = 1 \in S$
Where $\oplus$ denotes [bitwise xor](https://en.wikipedia.org/wiki/Bitwise_operation#XOR) operation.