CF437B.The Child and Set
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
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 was equal to sum ; here lowbit(x) equals 2k where k is the position of the first one in the binary representation of x . For example, lowbit(100102)=102,lowbit(100012)=12,lowbit(100002)=100002 (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<=105) .
输出格式
In the first line print an integer n (1<=n<=105) , 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
说明/提示
In sample test 1: lowbit(4)=4,lowbit(5)=1,4+1=5 .
In sample test 2: lowbit(1)=1,lowbit(2)=2,lowbit(3)=1,1+2+1=4 .