• HDOJ 1196 Lowest Bit(二进制相关的简单题)


    Problem Description
    Given an positive integer A (1 <= A <= 100), output the lowest bit of A.

    For example, given A = 26, we can write A in binary form as 11010, so the lowest bit of A is 10, so the output should be 2.

    Another example goes like this: given A = 88, we can write A in binary form as 1011000, so the lowest bit of A is 1000, so the output should be 8.

    Input
    Each line of input contains only an integer A (1 <= A <= 100). A line containing “0” indicates the end of input, and this line is not a part of the input data.

    Output
    For each A in the input, output a line containing only its lowest bit.

    Sample Input
    26
    88
    0

    Sample Output
    2
    8

    输入一个十进制的数:然后转换为二进制,输出二进制的位数从后面到前面数的第一个1的时候的数的十进制。
    例如:26二进制是11010,所以从后面对前面数,第二位为1,所以取值为10,再转换成十进制,输出为2;

    import java.util.Scanner;
    
    public class Main{
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            while(sc.hasNext()){
                int n =sc.nextInt();
                if(n==0){
                    return ;
                }
                String str = Integer.toString(n, 2);
                //System.out.println(str);
                for(int i=str.length()-1;i>=0;i--){
                    if(str.charAt(i)=='1'){
                        System.out.println((int)Math.pow(2, str.length()-1-i));
                        break;
                    }
                }
            }
        }
    
    }
    
  • 相关阅读:
    latin1字符集的数据转换为utf8字符集
    mysql使用utf8mb4经验吐血总结
    字符集GBK和UTF8的区别说明
    10分钟学会理解和解决MySQL乱码问题
    MySQL大小写敏感总结
    分区表基本类型
    form表单提交的几种方法
    Redis面试题及分布式集群
    ELK
    Linux下的crontab定时执行任务命令详解
  • 原文地址:https://www.cnblogs.com/webmen/p/5739330.html
Copyright © 2020-2023  润新知