题解 | #两个整数二进制位不同个数#

两个整数二进制位不同个数

https://www.nowcoder.com/practice/16e48900851646c0b2c6cdef9d7ea051

#include <stdio.h>

int count_different_bits(int num1, int num2) {
	int count = 0;
	int xor_result = num1 ^ num2; // 使用异或操作得到不同的位

	// 计算不同位的数量
	while (xor_result) {
		count += xor_result & 1; // 如果最低位为1,则计数加1
		xor_result >>= 1; // 向右移动一位,检查下一位
	}

	return count;
}

int main() {
	int num1, num2;
	scanf("%d %d", &num1, &num2);

	int different_bits = count_different_bits(num1, num2);
	printf("%d\n", different_bits);

	return 0;
}

全部评论

相关推荐

03-18 09:45
莆田学院 golang
牛客749342647号:佬,你这个简历模板是哪个,好好看
点赞 评论 收藏
分享
野猪不是猪🐗:现在的环境就是这样,供远大于求。 以前卡学历,现在最高学历不够卡了,还要卡第一学历。 还是不够筛,于是还要求得有实习、不能有gap等等... 可能这个岗位总共就一个hc,筛到最后还是有十几个人满足这些要求。他们都非常优秀,各方面都很棒。 那没办法了,看那个顺眼选哪个呗。 很残酷,也很现实
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务