#9. jack

jack

题目背景

题目描述

你是一个魔术师。你现在要给观众表演魔术。

观众给了你两个整数 n,kn,k,你要将 12n1\sim 2^n 划分为两个集合 a,ba,b,使得对任意整数 p [0,k]p\in [0,k],满足 v a vp=v bvp\sum\limits_{v\in a} v^p=\sum\limits_{v\in b}v^p

注意:aabb 的交集为空,并集为 12n1\sim 2^n

输入格式

一行两个整数 n,kn,k

输出格式

第一行一个整数 00 或 1100 表示无解,11 表示有解。

若第一行输出为 11,则第二行第一个整数 k1k_1 表示集合 aa 的大小,接下来 k1k_1 个整数表示集合 aa 中的元素;第三行第一个整数 k2k_2 表示集合 bb 的大小,接下来 k2k_2 个整数表示集合 bb 中的元素。你需要保证 k1+k2=2nk_1+k_2=2^n。若有多组解,输出任意一组即可。

若第一行输出为 00,则无需输出其他内容。

样例一

input
3 1
output
1
4 1 4 5 8
4 2 3 6 7

限制与约定

对于 30%30\% 的数据,k 1k\le 1

对于另外 20%20\% 的数据,n 5n\le 5

对于 100%100\% 的数据,1 n 161\le n\le 160 k< n0\le k\lt n