目录
题目
小明从糖果盒中随意抓一把糖果,每次小明会取出一半的糖果分给同学们。
当糖果不能平均分配时,小明可以选择从糖果盒中(假设盒中糖果足够)取出一个糖果或放回一个糖果。
小明最少需要多少次(取出、放回和平均分配均记一次),能将手中糖果分至只剩一颗。
输入描述
抓取的糖果数(<10000000000):
15
输出描述
最少分至一颗糖果的次数:
5
示例1 输入输出示例仅供调试,后台判题数据一般不包含示例
输入
15
输出
5
备注
解释:
(1)15+1=16;
(2)16/2=8;
(3)8/2=4;
(4)4/2=2;
(5)2/2=1;
思路
code
var fn = function (N) {
let backtracking = (n) => {
if (n == 1 || n == 0) return 0;
if (n % 2 == 0) {
return backtracking(n / 2) + 1