题库练习 The Child and Set
← 上一题 下一题 →

A9532 | The Child and Set

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

At the children's day, the child came to Picks's house, and messed his house up. Picks was angry at him. A lot of important things were lost, in particular the favorite set of Picks.

Fortunately, Picks remembers something about his set $S$ :

- its elements were distinct integers from $1$ to $limit$ ;
- the value of ![](/uploads/acgo/image/e659b6d2909e3347_b43fc07e5ef1.jpeg) was equal to $sum$ ; here $lowbit(x)$ equals $2^{k}$ where $k$ is the position of the first one in the binary representation of $x$ . For example, $lowbit(10010_{2})=10_{2},lowbit(10001_{2})=1_{2},lowbit(10000_{2})=10000_{2}$ (binary representation).

Can you help Picks and find any set $S$ , that satisfies all the above conditions?

输入格式

The first line contains two integers: $sum,limit$ $(1<=sum,limit<=10^{5})$ .

输出格式

In the first line print an integer $n$ $(1<=n<=10^{5})$ , denoting the size of $S$ . Then print the elements of set $S$ in any order. If there are multiple answers, print any of them.

If it's impossible to find a suitable set, print -1.

输入输出样例

输入 #1
5 5
输出 #1
2
4 5
输入 #2
4 3
输出 #2
3
2 3 1
输入 #3
5 1
输出 #3
-1
C++ 编辑器
输入
输出