牛客网刷题 ——C语言初阶(5操作符)——OR76 两个整数二进制位不同个数

1. 牛客网题目:OR76 两个整数二进制位不同个数

牛客网OJ链接

描述:

输入两个整数,求两个整数二进制格式有多少个位不同

输入描述:两个整数

输出描述:二进制不同位的个数

示例1

输入:22 33

输出:5

2.思路

不同的个数,想起来咱操作符有一个异或,相同为0 ,相异为1 ,让两个二进制数,异或,得到的二进制结果求其中1的个数,就是不同位的个数。

3. 代码实现

c 复制代码
#include <stdio.h>

int main() {
   	int a = 0; 
	int b = 0;
	int count = 0;
	while (scanf("%d %d", &a, &b) != EOF)
	{
		int c = 0;
		c = a ^ b;
		int i = 0;
		
		for (i = 0; i < 32; i++) 
		{
			if (c & (1 << i))
			{
				count++;
			}
		}
	}
	
	printf("%d ", count);
    return 0;
}
相关推荐
qeen8717 分钟前
【数据结构】建堆的时间复杂度讨论与TOP-K问题
c语言·数据结构·c++·学习·
莎士比亚的文学花园20 分钟前
Linux驱动开发(3)——设备树
开发语言·javascript·ecmascript
图码28 分钟前
如何用多种方法判断字符串是否为回文?
开发语言·数据结构·c++·算法·阿里云·线性回归·数字雕刻
U盘失踪了34 分钟前
python curl转python脚本
开发语言·chrome·python
charlie11451419134 分钟前
Linux 字符设备驱动:cdev、设备号与设备模型
linux·开发语言·驱动开发·c
handler0136 分钟前
Linux 内核剖析:进程优先级、上下文切换与 O(1) 调度算法
linux·运维·c语言·开发语言·c++·笔记·算法
FQNmxDG4S37 分钟前
Java泛型编程:类型擦除与泛型方法的应用场景
java·开发语言·python
我星期八休息1 小时前
IT疑难杂症诊疗室:AI时代工程师Superpowers进化论
linux·开发语言·数据结构·人工智能·python·散列表
热心网友俣先生1 小时前
2026年第二十三届五一数学建模竞赛C题超详细解题思路+各问题可用模型推荐+部分模型结果展示
c语言·开发语言·数学建模
01漫游者1 小时前
JavaScript函数与对象增强知识
开发语言·javascript·ecmascript