题解 | 两个整数二进制位不同个数
两个整数二进制位不同个数
https://www.nowcoder.com/practice/16e48900851646c0b2c6cdef9d7ea051
#include <stdio.h> int DifferentBin(int n, int m) { int count = 0; for (int i = 0; i < 32; i++) { if (((n >> i) & 1 ^ (m >> i) & 1)) { count++; } } return count; } int main() { int n, m = 0; scanf("%d %d", &n, &m); int ret = DifferentBin(n, m); printf("%d\n", ret); return 0; }