zoukankan      html  css  js  c++  java
  • Lowest Bit(hdoj1196)

    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
      把n化为二进制数,然后找出最低位,例如101000 最低位为1000 为8, 
     1 #include<cstdio>
     2 #include<iostream>
     3 #include<cmath>
     4 using namespace std;
     5 int fen(int n)
     6 {
     7     int i,a;
     8     for(i=0;n!=0;i++)
     9     {
    10         a=n%2;
    11         if(a!=0)
    12         {
    13             return i;
    14         }
    15         else
    16             n=n/2;
    17     }
    18 }
    19 int main()
    20 {
    21     int n,i;
    22     while(cin>>n)
    23     {
    24         if(n==0)
    25             break;
    26         else
    27             cout<<pow(2,fen(n))<<endl;
    28 
    29     }
    30 }
  • 相关阅读:
    详解objc_msgSend
    shell变量类型
    web ssh vnc备忘录
    内存对齐
    vim ctags
    vim csupport 代码 快捷键
    程序在内存中的地址映射
    nginx+php配置
    tmux 复制
    sqlite insert select 联合使用
  • 原文地址:https://www.cnblogs.com/a1225234/p/4539257.html
Copyright © 2011-2022 走看看