当前位置: 首页 > news >正文

2026-01-22-牛客每日一题-二进制不同位数


title: 2026-01-22-牛客每日一题-二进制不同位数
date: 2026-01-22
tags:

  • 算法学习
  • 牛客
  • 位运算

题目信息

  • 平台:牛客
  • 题目:二进制不同位数
  • 难度:简单
  • 题目链接

题目描述

给定两个整数 m、n,计算它们二进制表示中不同位的数量。


初步思路

  1. 不同位的数量等价于 m 与 n 的异或结果中 1 的个数。
  2. x = m ^ n得到所有不同位。
  3. 通过x &= x - 1每次消去最低位的 1,并计数。
示例 x = 1100111 | 1100100 x-1 = 1100110 | 1100011 x&x-1 = 1100110 | 1100000

最低位的1消去了

算法分析

  • 核心:异或 + 统计二进制 1 的个数
  • 技巧:Brian Kernighan 位计数法
  • 时间复杂度:O(k),k 为不同位数量(x 中 1 的个数)
  • 空间复杂度:O(1)

代码实现(C++)

/* * @Author: tkzzzzzz6 * @Date: 2026-01-22 22:21:35 * @LastEditors: tkzzzzzz6 * @LastEditTime: 2026-01-22 22:21:39 */#include<iostream>usingnamespacestd;intmain(){intm,n;cin>>m>>n;intx=m^n;intans=0;while(x!=0){x&=x-1;++ans;}cout<<ans;return0;}

总结与反思

  1. 用异或能直接锁定不同位。
  2. 位计数法比逐位扫描更简洁高效。
http://www.jsqmd.com/news/287704/

相关文章:

  • Paraformer与SenseVoiceSmall对比:长音频转录谁更高效?
  • Z-Image-Turbo自动化流水线:CI/CD集成部署实战案例
  • 开源大模型落地趋势分析:DeepSeek-R1+弹性GPU部署实战
  • Qwen多轮对话断裂?会话状态保持实战解决方案
  • 开源大模型边缘部署:Qwen All-in-One CPU适配实战教程
  • 2026-01-22-LeetCode刷题笔记-3507-移除最小数对使数组有序I
  • 泄密者的致命疏忽:打印机监控存档涉密截图
  • Qwen3-0.6B代码生成能力评测:HumanEval得分实测
  • NewBie-image-Exp0.1与ComfyUI集成:可视化工作流搭建
  • cv_unet_image-matting输出质量差?输入图片预处理建议指南
  • 商业航天及卫星通信基础知识
  • Qwen2.5-0.5B一键部署工具:最简安装方式推荐
  • 《知识图谱与大模型融合实践案例集》
  • YOLO11项目目录结构详解,新手必看
  • AI Agent智能体技术发展报告2026
  • Phind-CodeLlama vs IQuest-Coder-V1:复杂问题解决对比
  • Qwen All-in-One情感判断准确率:实测数据报告
  • 2026膜清洗装置厂家推荐:行业实力企业盘点
  • 2026膜过滤技术公司哪家好?行业实力企业推荐
  • 2026全自动过滤系统哪家专业?行业技术与应用解析
  • 零基础入门Linux自启配置,一键部署你的启动任务
  • 防止不当内容生成:Qwen敏感词过滤模块部署实战
  • 动漫AI创作新选择:NewBie-image-Exp0.1开源部署完整指南
  • 如何验证开机脚本是否成功执行?教你几招
  • 看完就想试!Qwen-Image-Edit-2511打造的AI设计作品分享
  • DeepSeek-R1-Distill-Qwen-1.5B支持商业使用?MIT许可详解
  • YOLO26验证集设置:val=True自动评估结果查看
  • 如何优化用户体验?麦橘超然加载动画与反馈设计
  • MinerU多栏文本提取:布局分析模型实战调优教程
  • Qwen3-4B-Instruct镜像推荐:一键部署支持256K长文本处理