#P16220. [ECUSTPC 2025] 浮点

    ID: 18235 远端评测题 1000ms 1024MiB 尝试: 0 已通过: 0 难度: 3 上传者: 标签>2025Special Judge位运算构造高校校赛

[ECUSTPC 2025] 浮点

题目描述

Maddy 碰到了一台机器,在机器面前她需要报出一长串数,这样她才可以获得水晶之心!
机器首先告诉了 Maddy 一个整数 nn,具体而言,这串数的要求如下:

  1. 这串数由 nn 个在 [0,230)[0, 2^{30}) 之内的整数组成,记其为 a1,a2,,ana_1, a_2, \dots, a_n
  2. 对于所有的 1i<n1 \le i < n,满足有 ai<ai+1a_i < a_{i+1} 且 $a_i \text{ xor } a_{i+1} < a_i \text{ and } a_{i+1}$。

请帮助 Maddy 求出一串这样的数,或告诉 Maddy 答案并不存在。

输入格式

第一行输入一个整数 TT (1T1031 \le T \le 10^3),表示测试数据的数量。
每组测试数据的唯一一行输入一个整数 nn (2n1062 \le n \le 10^6),表示机器告诉 Maddy 的数。
保证所有测试数据输入的 n106\sum n \le 10^6

输出格式

对于每组测试数据中若存在这样的一串数则输出一行 nn 个整数,表示一串满足机器要求的数,若不存在则输出一行一个整数 1-1
如果有多个合法的答案则你可以输出其中任意一个。

4
2
3
4
5
9 15
4 5 6
9 10 12 15
8 9 10 11 12

提示

样例 1 解释

对于第 1 个样例,a1 xor a2=9 xor 15=6a_1 \text{ xor } a_2 = 9 \text{ xor } 15 = 6a1 and a2=9 and 15=9a_1 \text{ and } a_2 = 9 \text{ and } 15 = 9,因此有 a1 xor a2<a1 and a2a_1 \text{ xor } a_2 < a_1 \text{ and } a_2,且容易发现 a1<a2a_1 < a_2
对于第 2 个样例,

  • a1 xor a2=4 xor 5=1a_1 \text{ xor } a_2 = 4 \text{ xor } 5 = 1a1 and a2=4 and 5=4a_1 \text{ and } a_2 = 4 \text{ and } 5 = 4,因此有 a1 xor a2<a1 and a2a_1 \text{ xor } a_2 < a_1 \text{ and } a_2,且容易发现 a1<a2a_1 < a_2
  • a2 xor a3=5 xor 6=3a_2 \text{ xor } a_3 = 5 \text{ xor } 6 = 3a2 and a3=5 and 6=4a_2 \text{ and } a_3 = 5 \text{ and } 6 = 4,因此有 a2 xor a3<a2 and a3a_2 \text{ xor } a_3 < a_2 \text{ and } a_3,且容易发现 a2<a3a_2 < a_3

提示

对于两个整数 aabba xor ba \text{ xor } b 表示按位取异或,即结果的二进制表示的一位为 1 当且仅当原数的二进制表示在该位上有且仅有一个 1。
对于两个整数 aabba and ba \text{ and } b 表示按位取与,即结果的二进制表示的一位为 1 当且仅当原数的二进制表示在该位皆为 1。