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

力扣每日一题2024/11/2 3226. 使两个整数相等的位更改次数

class Solution:def minChanges(self, n: int, k: int) -> int:binary_n = format(n, 'b')binary_k = format(k, 'b')res=0# 将两个二进制字符串长度对齐,前面补零max_len = max(len(binary_n), len(binary_k))binary_n = binary_n.zfill(max_len)binary_k = binary_k.zfill(max_len)if binary_n==binary_k:return 0for i,j in zip(binary_n,binary_k):if i==j:continueif i!=j and i=='1':res+=1continueelse:return -1return res

思路

把两个数字变成python的字符串,然后取较大的长度,短的补齐0
然后诸位遍历,相同跳过,不同看第一个n的二进制是不是1,是1的话就答案+1,跳过,不是就直接返回-1

复杂度

  • 时间复杂度: O(∗)O(*)O(∗)
  • 空间复杂度: O(∗)O(*)O(∗)

http://www.mrgr.cn/news/64130.html

相关文章:

  • 【Java语言】继承和多态(一)
  • Linux Kernel Programming (个人读书笔记)
  • EtherCAT转ModbusTCP相关技术
  • 基于matlab的凸包(Convex Hull)算法理解与测试
  • 38.第二阶段x86游戏实战2-HOOK窗口消息机制(解决多开窗口句柄问题)
  • 【Spark中创建RDD的两种方式】Spark中如何获取sc对象、以及创建RDD的两种方式
  • 【棋盘覆盖——匈牙利算法】
  • 课程讲解---深搜
  • 使用NCNN在树莓派部署深度学习模型流程
  • vue中向响应式对象中添加新属性的方法(vm.$set() )
  • 微服务设计模式 - 发布订阅模式(Publisher Subscriber Pattern)
  • JavaScript。—关于语法基础的理解—
  • nacos+maven实现多环境配置
  • 广义加性模型
  • 短剧开发新模式:从内容创新到市场突围的全攻略
  • 仅需百元/年,助你快速构建高效私有的Node.js图床
  • Yocto中MACHINE 和 DISTRO是输入,IMAGE 是他们组合的产物
  • 华为云安装docker
  • Docker — 跨平台和环境部署
  • Linux:防火墙和selinux对服务的影响
  • docker复现pytorch_cyclegan
  • 【C/C++】字符/字符串函数(0)——由ctype.h提供
  • Linux云计算 |【第五阶段】CLOUD-DAY8
  • 前端将网页转换为pdf并支持下载与上传
  • 我的作品·导航
  • Java复习29(PTA)