#P15716. 零和收藏盒
零和收藏盒
题目描述
工匠 Kira 正在制作一只“零和收藏盒”。盒子里会放入若干个整数,每次游客可以从这些整数中任选一些,组成一个子集。Kira 希望这只盒子刚好有 种选择方式,使得所选整数之和为 。
形式化地,你需要构造一个数组
满足以下条件:
- ;
- 对所有 ,有 ;
- 在集合 的所有子集 中,恰好有 个子集满足
空集也算作一个子集。
可以证明,在本题限制下总能构造出合法数组。
输入格式
第一行包含一个整数 ,表示测试用例数量。
接下来 行,每行包含一个整数 。
输出格式
对每个测试用例,输出两行。
第一行输出一个整数 ,表示构造数组的长度。
第二行输出 个整数 。
如果存在多种合法构造,输出任意一种即可。
数据范围
- ;
- ;
- ;
- 。
样例 1
输入
2
3
16
输出
5
2021 -1000 -1021 -2000 -21
4
0 0 0 0
样例说明
数组元素不要求互不相同。样例输出只是可行构造之一。