4268: 111

内存限制:128 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:Special Judge 上传者:
提交:21 通过:10

题目描述

有人认为2m-1(m为非负整数)为完美数,比如0,1,3,7,15。
现在可以有对一个数X进行变换,在变换中,可以执行以下操作:
  • (操作 A):您选择任何非负整数 n 并替换 X⊕(2n−1) 替换X,⊕是一个按位异或运算符。
  • (操作 B):替换 X+1替换X.
第一个应用的操作必须是 A 类,第二个是 B 类,第三个是 A 类,依此类推。形式上,如果我们按照操作的执行顺序从一开始编号,那么奇数操作必须是 A 类型,偶数操作必须是 B 类型。
你能帮忙写一份将X转换为完美数的转换计划吗?请注意,不需要最小化操作次数。

输入格式

唯一的一行包含一个整数 X (1≤X≤106).

输出格式

第一行输出需要多少个步骤t。
第二行输出每一个A操作的n值。
如果有多个可能的答案,您可以打印其中任何一个。

输入样例 复制

39

输出样例 复制

4
5 3

数据范围与提示

其中一个转换可能如下所示: 39→56→57→62→63. 或者更准确地说:
  1. 挑选n=5.X被转化为39⊕31=56.
  2. X加1,将其值更改为 57.
  3. 挑选n=3.X被转化为57⊕7=62.
  4. X加1,将其值更改为 63=26−1.

分类标签