给定两个正整数 和 。将它们分别写成二进制串(不含前导 ),从最低位对齐后进行比较。请计算在所有对应位上二进制数字不同的位数,记为 。 更形式化地,设 ,则 等于 的二进制表示中 的个数。
输入描述:
在一行上输入两个整数 ,表示需要比较的两个正整数。


输出描述:
在一行上输出一个整数,表示 和 的二进制表示中不同的位数 。
示例1

输入

15 8

输出

3

说明

\hspace{15pt}在这个样例中,m=15 的二进制为 \left(1111\right)_2n=8 的二进制为 \left(1000\right)_2
\hspace{15pt}从最低位对齐后比较四个二进制位,有 3 个位置上的数字不同,因此答案为 3
示例2

输入

7 10

输出

3

说明

\hspace{15pt}在这个样例中,m=7 的二进制为 \left(111\right)_2n=10 的二进制为 \left(1010\right)_2
\hspace{15pt}补齐后比较四个二进制位:
\hspace{23pt}\bullet\,1 位(最低位):1 \neq 0
\hspace{23pt}\bullet\,2 位:1 = 1
\hspace{23pt}\bullet\,3 位:1 \neq 0
\hspace{23pt}\bullet\,4 位:0 \neq 1
\hspace{15pt}共有 3 个位置不同,故答案为 3
加载中...