题目描述
LHX 正在和一只怪物战斗。怪物的生命值是 H 。
LHX 可以选择一个怪物进行攻击。当怪物受到攻击时,根据怪物的健康状况,会发生以下情况:
如果怪物的生命值是 1 ,它的生命值会下降到 0 。
如果怪物的生命值 X 大于 1 ,那么怪物就会消失。然后,会出现两个新的怪物,每个怪物的生命值都是 ⌊X/2⌋ 。⌊r⌋ 表示不超过 r 的最大整数)。
当所有现有怪物的健康值变为 0 或更低时, LHX 获胜。
求 LHX 在获胜前最少需要攻击的次数。
输入
一行一个整数H。($1 \le H \le 10^{12}$)
输出
找出 LHX 在获胜前需要发动的最少攻击次数。
提示
当 LHX 攻击初始怪物时,它消失了,同时出现了两个怪物,每个怪物的健康值都是 1 。
然后,狞猫可以攻击这些新怪物各一次,总共攻击三次即可获胜。