美文网首页奇妙的位运算
位运算之两个数转换进制改变问题(hihocoder)

位运算之两个数转换进制改变问题(hihocoder)

作者: 掌灬纹 | 来源:发表于2019-01-24 21:55 被阅读0次

题目:

给定两个整数A和B,

需要改变几个二进制位才能将A转为B。


样例输入

10 8

样例输出

1

思路:

改变几个即是,原两个数之间有几位是不同的,将两个数异或运算,在同计解中1的个数即可。(统计1的个数在前边详细解释过)

(Java代码)

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int a = sc.nextInt();

int b = sc.nextInt();

int c= a^b;

int count = 0;

while(c!=0) {

c = c&(c-1);

count++;

}

System.out.println(count);

}

}

相关文章

  • 位运算之两个数转换进制改变问题(hihocoder)

    题目: 给定两个整数A和B, 需要改变几个二进制位才能将A转为B。 样例输入 10 8 样例输出 1 思路: 改变...

  • 10/17

    今天老师讲了进制转换和位运算。进制转换就是二进制、八进制、十进制、十六进制的相互转化,位运算包括按位与,按位或,异...

  • 第06天C语言(00):笔记总结

    01-进制转换-基本概念 02-进制转换 03-原码补码反码 04-位运算 05-左移右移 06-位运算-练习1 ...

  • 【算法训练营学习笔记-Week07】位运算的妙用

    位运算 如何从十进制转换为二进制 位运算符号 含义运算符示例左移<<0011 ->0110右移>>0110 -> ...

  • php 与、或、异或运算

    1.与运算(&) 参加运算的两个数据,按二进制位进行“与”运算。 运算规则: 即:两位同时为“1”,结果才为“1”...

  • 12.21

    今天星期四,今天是牛老师给我们讲课,主要讲了位的运算,包括位运算的运算符,二进制十进制十六进制的转换,位运算的应用...

  • 2018-11-27 (Review-1)

    一 (进制转换, 补码反码, 字符基础, 位运算) 1.进制的转换二进制bin(整数)八进制oct(整数)十六进制...

  • 10.17

    今天学习了位操作,包括进制转换,二进制,十进制,八进制,十六进制的互相转换等,还有为运算包括一些运算符的使用规则等...

  • C++ 按位与、或、异或等运算方法

    按位与运算符(&) 参加运算的两个数据,按二进制位进行“与”运算。 运算规则:0&0=0; 0&1=0; ...

  • golang 位运算符

    位运算,是两个数字的二进制对应的值,每一位,进行运算,得出新值的过程 & = 两个数,每一位,同时都=1,则返回1...

网友评论

    本文标题:位运算之两个数转换进制改变问题(hihocoder)

    本文链接:https://www.haomeiwen.com/subject/vtxpjqtx.html