zoukankan      html  css  js  c++  java
  • 476. 求二进制的补数 Number Complement

    Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.

    Note:

    1. The given integer is guaranteed to fit within the range of a 32-bit signed integer.
    2. You could assume no leading zero bit in the integer’s binary representation.

    Example 1:

    Input: 5
    Output: 2
    Explanation: The binary representation of 5 is 101 (no leading zero bits), and its complement is 010. So you need to output 2.
    

    Example 2:

    Input: 1
    Output: 0
    Explanation: The binary representation of 1 is 1 (no leading zero bits), and its complement is 0. So you need to output 0.


    1. public int FindComplement(int num) {
    2. int number = 0;
    3. string s = "";
    4. while (num > 0)
    5. {
    6. s = ((num % 2) ^ 1).ToString() + s;
    7. num /= 2;
    8. }
    9. double pow = 0;
    10. for (int i = s.Length - 1; i >= 0; i--)
    11. {
    12. number += (Convert.ToInt32(s[i]) - 48) * (int)Math.Pow(2, pow++);
    13. }
    14. return number;
    15. }





  • 相关阅读:
    Unstar A File:
    star 一个文件
    列出大星号文件
    删除用户
    curl -d
    创建用户
    Check Account Info
    List Accounts
    认证ping
    python 解接口返回的json字符串
  • 原文地址:https://www.cnblogs.com/xiejunzhao/p/1a4433ae154717102e168b733584ae47.html
Copyright © 2011-2022 走看看