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

时间限制: 2s 内存限制: 192MB 提交: -22 解决: 8
题目描述

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

【程序设计】

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

题目:编写函数,实现给定一个自然数(非负整数)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
 编译错误 1