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 SS :

  • its elements were distinct integers from 11 to limitlimit ;
  • the value of was equal to sumsum ; here lowbit(x)lowbit(x) equals 2k2^{k} where kk is the position of the first one in the binary representation of xx . For example, lowbit(100102)=102,lowbit(100012)=12,lowbit(100002)=100002lowbit(10010_{2})=10_{2},lowbit(10001_{2})=1_{2},lowbit(10000_{2})=10000_{2} (binary representation).

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

输入格式

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

输出格式

In the first line print an integer nn (1<=n<=105)(1<=n<=10^{5}) , denoting the size of SS . Then print the elements of set SS 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=5lowbit(4)=4,lowbit(5)=1,4+1=5 .

In sample test 2: lowbit(1)=1,lowbit(2)=2,lowbit(3)=1,1+2+1=4lowbit(1)=1,lowbit(2)=2,lowbit(3)=1,1+2+1=4 .

首页