世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么?
输入例子:
1999 2299
输出例子:
输入例子:
1999 2299
输出例子:
7
C++源代码:
// xiaomi problem 2017.04.05
// 2017.04.09 by wyj
/*
名企笔试:2015小米暑期实习笔试题(二进制)
2017-04-05 算法爱好者
世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么?
输入例子:
1999 2299
输出例子:
7
*/
#include
#include
using namespace std;
int main()
{
int a, b, i, n = 0;
cin >> a >> b;
unsigned int t = a^b;
for (i = 0;i < 32;i++)
{
if (t % 2 != 0)
n++;
t >>= 1;
}
cout << n << endl;
return 0;
}