#OD166. 分糖果

分糖果

题目解析和算法源码

华为OD机试 - 分糖果(Java & JS & Python & C & C++)_华为od 分糖果_伏城之外的博客-CSDN博客

题目描述

小明从糖果盒中随意抓一把糖果,每次小明会取出一半的糖果分给同学们。

当糖果不能平均分配时,小明可以选择从糖果盒中(假设盒中糖果足够)取出一个糖果或放回一个糖果。

小明最少需要多少次(取出、放回和平均分配均记一次),能将手中糖果分至只剩一颗。

输入描述

抓取的糖果数(<10000000000):15

输出描述

最少分至一颗糖果的次数:5

用例1

输入

15

输出

5

说明

15+1=16;

16/2=8;

8/2=4;

4/2=2;

2/2=1;