首页 > 试题广场 >

两个整数二进制位不同个数

[编程题]两个整数二进制位不同个数
  • 热度指数:6583 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
输入两个整数,求两个整数二进制格式有多少个位不同

输入描述:
两个整数


输出描述:
二进制不同位的个数
示例1

输入

22 33

输出

5
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.Map;
import java.util.Queue;
import java.util.Scanner;
import java.util.Stack;

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;
        b=0;
        for(a=0;a<32;a++) {
            
            if(((c>>a)&0x1)==0x1) {
                
                b++;
            }
            
            
        }
        System.out.println(b);

    }
}
发表于 2020-06-05 21:03:31 回复(0)