3226 使两个整数相等的位更改次数

class Solution {
public:
    int minChanges(int n, int k) {
        int res=0;
        while(1){
            int a=n&1;
            int b=k&1;
            if(a==1 && b==0)res++;
            else if(a==0 && b==1) return -1;
            n=n/2;
            k=k/2;
            if(n==0 && k>0)return -1;
            if(n==0 && k==0) break;
        }
        return res;
    }
};

位与操作 &

相关推荐

  1. ZZULIOJ 1003: 整数四则运算

    2024-07-23 02:58:01       41 阅读
  2. 运算:消失数字

    2024-07-23 02:58:01       53 阅读
  3. C#:求整数最大值

    2024-07-23 02:58:01       29 阅读
  4. 运算:Leetcode371.整数之和

    2024-07-23 02:58:01       46 阅读
  5. 如何优雅比较对象是否相等

    2024-07-23 02:58:01       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-23 02:58:01       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-23 02:58:01       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-23 02:58:01       45 阅读
  4. Python语言-面向对象

    2024-07-23 02:58:01       55 阅读

热门阅读

  1. python的open()函数

    2024-07-23 02:58:01       12 阅读
  2. 【过题记录】 7.22

    2024-07-23 02:58:01       14 阅读
  3. linux kernel 内核缓存回收的相关配置项

    2024-07-23 02:58:01       17 阅读
  4. Asp Net Web API 请求报错

    2024-07-23 02:58:01       12 阅读
  5. 欧鹏 数据库第二次作业

    2024-07-23 02:58:01       13 阅读
  6. FTP传输的两种模式的技术原理和应用

    2024-07-23 02:58:01       15 阅读
  7. mysql的不等于和null值问题

    2024-07-23 02:58:01       14 阅读
  8. 论c++中的GUI

    2024-07-23 02:58:01       14 阅读
  9. objdump命令的常见用法

    2024-07-23 02:58:01       11 阅读