#CF2131B. 交替序列

交替序列

B. 交替序列
每个测试的时间限制:22
内存限制:256256 兆字节


给你一个整数 nn。如果一个长度为 nn 的数组 aa 满足以下条件,则称它为 好数组

  • 对所有 1i<n1 \le i < n,有 aiai+1<0a_i \cdot a_{i+1} < 0(即相邻元素的乘积为负)。
  • 对所有长度至少为 22 的子数组*,该子数组内所有元素的和为正†。

此外,如果一个长度为 nn 的好数组 aa 比另一个长度为 nn 的好数组 bb 更好,当且仅当
[a1,a2,,an][|a_1|, |a_2|, \dots, |a_n|] 在字典序‡上小于 [b1,b2,,bn][|b_1|, |b_2|, \dots, |b_n|]
注意 z|z| 表示整数 zz 的绝对值。

请输出一个长度为 nn 的好数组,使得它比所有其他长度为 nn 的好数组都更好。


*子数组 cc 是数组 dd 的子数组,如果 cc 可以通过从 dd 的开头删除若干(可能为零或全部)元素,并从结尾删除若干(可能为零或全部)元素得到。

†整数 xx 是正数,如果 x>0x > 0

‡序列 aa 在字典序上小于序列 bb,当且仅当以下条件之一成立:

  • aabb 的一个前缀,但 aba \ne b
  • aabb 第一个不相同的位置上,aa 的元素小于 bb 的对应元素。

输入格式
第一行包含一个整数 tt1t5001 \le t \le 500)——测试用例的数量。

每个测试用例的单行包含一个整数 nn2n21052 \le n \le 2 \cdot 10^5)——数组的长度。

保证所有测试用例的 nn 之和不超过 21052 \cdot 10^5


输出格式
对于每个测试用例,在新的一行输出 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n109ai109-10^9 \le a_i \le 10^9),即你的数组元素。


示例输入

2
2
3

示例输出

-1 2
-1 3 -1

提示

  • 在第一个测试用例中,因为 a1a2=2<0a_1 \cdot a_2 = -2 < 0a1+a2=1>0a_1 + a_2 = 1 > 0,满足两个条件。并且可以证明,对应的 b=[1,2]b = [1, 2] 比其他任何长度为 22 的好数组都更好。