题目 1643:

输入一个非负整数,计算转变为2所需的最少步数

 时间限制: 1s 内存限制: 128MB
题目描述

/*-----------------------------------------------------------------------

【程序设计】

-------------------------------------------------------------------------

题目:编写函数,实现给定一个自然数(非负整数)n,每次操作可以对该数执行以下两种操作之一:

1.如果该数是偶数,则将其除以2(即 n←n/2)。

2.如果该数是奇数,则先将其加1变为偶数(同时也是下一个更大的奇数之后的偶数),然后再除以2(即 n←(n+1)/2)。

目标是计算出通过上述操作将该数n转变为2所需要的最少步数。

例如输入:10

输出:3

-------------------------------------------------------------------------

注意:请勿改动程序中的其他内容,函数中根据需求可以自定义变量名。

------------------------------------------------------------------------*/

输入
输出

样例输入

10

样例输出

3
提示

通过率

统 计

 提交 22
 正确 8
 格式错误 0
 答案错误 13
 时间超限 0
 内存超限 0
 输出超限 0
 运行错误 0
 编译错误 1