题解 | #两个整数二进制位不同个数#
两个整数二进制位不同个数
https://www.nowcoder.com/practice/16e48900851646c0b2c6cdef9d7ea051
#include <stdio.h> int main() { int x, y; int n = 0; int count = 0; scanf("%d %d",&x,&y); n = x^y;//按位异或后相同为0,不同为1,接下来只需计算n中1的个数 while(n) { count++; n = n & (n-1);//按位与后将一个1替换为0 } printf("%d",count); return 0; }