给定一个长度为 的数组 ,如果满足以下两条性质,则称其为伟大数组: 数组单调非降,且所有元素都是非负整数; 其异或和 是 的一个因子,即 。 现在给定整数 ,请你构造一个长度为 的伟大数组,或者判断不存在这样的数组。 【名词解释】 按位异或: 表示按位异或运算,运算方法为对两个整数的对应二进制位进行比较:若两位相同则结果为 ,不同则结果为 。 异或和: 表示将所有 依次按位异或得到的结果。
输入描述:
每个测试文件均包含多组测试数据。第一行输入一个整数 代表数据组数,每组测试数据描述如下: 在一行上输入一个整数 —— 需要构造的数组长度。 除此之外,保证单个测试文件的 之和不超过 。


输出描述:
对于每一组测试数据: 如果存在伟大数组,请在一行上按照非递减顺序输出 个整数 ; 如果不存在伟大数组,直接输出一个整数 。 如果存在多种可行答案,你可以输出任意一种即可,系统会自动判定是否正确。
示例1

输入

3
1
2
3

输出

1
1 3
2 2 3

说明

\hspace{15pt}在这一组样例中: 
\hspace{23pt}\bullet\,n=1 时,数组 \{1\} 的异或和为 1,显然 1\mid 1
\hspace{23pt}\bullet\,n=2 时,数组 \{1,3\} 的异或和为 1\oplus 3 = 2,并且 2\mid 2
\hspace{23pt}\bullet\,n=3 时,数组 \{2,2,3\} 的异或和为 2\oplus 2\oplus 3 = 3,并且 3\mid 3
加载中...