给你一个 整数 n

sn二进制表示(不含前导零)。

二进制字符串 s反转 是指将 s 中的字符按相反顺序排列得到的字符串。

你可以翻转 s 中的任意一位(将 0 → 11 → 0)。每次翻转 影响一位。

请返回使 s 等于其原始形式的反转所需的 最少 翻转次数。

 

示例 1:

输入: n = 7

输出: 0

解释:

7 的二进制表示为 "111"。其反转也是 "111",两者相同。因此,不需要翻转。

示例 2:

输入: n = 10

输出: 4

解释:

10 的二进制表示为 "1010"。其反转为 "0101"。必须翻转所有四位才能使它们相等。因此,所需的最少翻转次数为 4。

 

提示: