AT_arc213_b [ARC213B] Hamming Distance is not 1

题目描述

给你一些非负整数 $q,L,R\;(q \in \{ 0,1\}, \; L \leq R)$。考虑一个集合 $S$,它满足以下所有条件: - $S$ 由 $L$ 到 $R$(包含端点)之间的互不相同的整数构成。 - 如果 $a \in S, \; b \in S, \; a \neq b$, 那么 $a$ 和 $b$ 在二进制表示中至少有两个不同的位。 更正式地说,存在至少两个非负整数 $i$,使得 $\left\lfloor\frac{a}{2^i}\right\rfloor$ 和 $\left\lfloor\frac{b}{2^i}\right\rfloor$ 的奇偶性不同。 - 在满足上述两个条件的集合中,元素个数最大。 如果 $q=0$, 求满足条件的集合 $S$ 的元素个数。 如果 $q=1$, 构造出这样一个集合 $S$。 每个输入文件包含 $T$ 组测试数据。

输入格式

第一行一个正整数 $T$,代表测试数据组数。 接下来 $T$ 行,每行三个用空格隔开的整数 $q$,$L$,$R$。

输出格式

输出共 $T$ 行。 第 $T$ 行输出第 $T$ 组测试数据的答案。 对于每组测试数据,如果 $q=0$,输出满足条件的集合 $S$ 的元素个数。 如果 $q=1$,对于满足条件的集合 $S$,令 $B_i=\begin{cases} 1 \; (S \text{ 包含 } i) \\ 0 \; (S \text{ 不包含 } i) \end{cases}$ 按如下格式输出: $B_L \;$ $B_{L+1}\;$ $\dots\;$ $B_R$ 如果存在多个满足条件的集合 $S$,你可以输出其中任意一个。

说明/提示

### 样例解释 1 第一组测试数据中,$S=\{0,3\}$ 满足条件。$S=\{1,2\}$ 也满足条件,所以正确。 第二组测试数据中,唯一满足条件的 $S$ 是 $\{1,2\}$, 元素个数是 $2$。 ### 数据范围 - $1 \leq T \leq 2 \times 10^5$ - $0 \leq q \leq 1$ - $0 \leq L \leq R \leq 10^{18}$ - 所有测试数据中,$q(R-L)$ 的和不超过 $5\times 10^6$。 - 所有输入值均为整数。