#dwacon5thfinalb. [dwacon5th_final_b]XOR Spread
[dwacon5th_final_b]XOR Spread
问题描述
给定一个长度为 的数列 ,其中第 个元素为 。
对于数列 ,尼玛君可以执行以下操作零次或多次:
- 操作:选择满足 的整数 ,将 替换为 ,将 替换为 。其中 表示异或运算。
请找出在执行零次或多次操作后得到的数列 中字典序最小的那个数列。
约束条件
- 输入都是整数。
输入
输入由标准输入给出,具有以下格式。
输出
请输出结果。
示例1
3
2 3 1
输出示例1
1 3 2
- 可以通过一次操作将 $(2,3,1) \rightarrow (2 \oplus 3, 3, 1 \oplus 3) = (1,3,2)$。
示例2
5
1 1 3 2 1
输出示例2
0 1 0 2 3
示例3
15
454149310 980904516 263802120 650414794 570152508 496610001 940998475 895836185 33049807 966544922 733719158 536712208 292230877 949871052 342421559
输出示例3
23988306 158687594 74711974 280079291 131007899 572247609 33049807 210457501 22094817 292230877 86347283 143004158 53812512 67781078 644469472