题解 | 二进制不同位数

二进制不同位数

https://www.nowcoder.com/practice/daf9032926614dab91ca624a7759a868

using System;

class Program {
    static void Main() {
        // 读取输入的两个整数
        string[] parts = Console.ReadLine().Split();
        int m = int.Parse(parts[0]);
        int n = int.Parse(parts[1]);

        // 第一步:异或运算,不同位会变成1
        int x = m ^ n;
        int count = 0;

        // 第二步:统计异或结果中1的个数
        while (x != 0) {
            x &= x - 1; // 清除最右边的1
            count++;
        }

        Console.WriteLine(count);
    }
}

全部评论

相关推荐

努力的小明a:项目看着很眼熟,施磊老师吧,我也学的这个😋我当时是把rpc框架做成了一个分布式网盘,这是一个项目,然后muduo库做成集群即时通讯,又用QT做了个交互的客户端,这样又一个项目,然后一个轻量redis,一个CAD,总共四个项目,投了三个月就今天2月份一个小厂Qt offer,然后后面想开了,Qt啥的都能干,这个月get了个北京大厂的offer,做java后端,人生就是这么魔幻,现在就在去北京入职的路上
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务