题目 解题思路: 将数字转为二进制后,有 a 位数就要做 a-1 次除法(最后一个1不用,比如 8 的二进制 1000,除以 2 就是右移一位,右移三位让 1 到最后,然后减去最后的1),有 b 个 1 就要做 b-1 次减法(当前面的1除以2右移到最后一位时,此时就是奇数,要减去最后的1): 执行结果: