zoukankan      html  css  js  c++  java
  • 杭电oj 题目1196 Lowest Bit

    Lowest Bit

    Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 12204 Accepted Submission(s): 8905

    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

    二进制的最低位可根据a&(-a)就能直接求出二进制的最后一位

    #include<iostream>
    #include<cstdio>
    using namespace std;
    int main()
    {
       int k;
       while(scanf("%d",&k)!=EOF)
       {
           if(k==0)
            break;
           printf("%d
    ",k&(-k));
       }
       return 0;
    }
    
  • 相关阅读:
    24.Azkaban调度脚本的编写
    Docker 安装 Apache
    Docker 安装 MongoDB
    Docker 安装 Redis
    Docker 安装 Python
    Docker 安装 Tomcat
    Docker 安装 MySQL
    Docker 安装 PHP
    Docker 安装 Nginx
    Docker 镜像使用
  • 原文地址:https://www.cnblogs.com/nanfenggu/p/7900112.html
Copyright © 2011-2022 走看看