1218.補数

1218.補数

中国人 英語

正の整数を指定して、その補数を出力します。補数は、元の数値のバイナリ表現をビットごとに反転し、次に10進数に戻すことによって取得される新しい数値です。

サンプル

例1:

输入:5
输出:2
说明:5的二进制表示为101(不包含前导零),它的补数为010,因此你需要输出2。

サンプル2:

输入:1
输出:0
说明:1的二进制表示为1(不包含前导零),它的补数为0,因此你需要输出0。

注意が必要な事項

  1. 指定された整数は、32ビットの符号付き整数の範囲にあることが保証されています。
  2. 正の整数のバイナリ表現に先行ゼロが含まれていないとします。
テストデータを入力(1行に1つのパラメーター) テストデータを理解するには
class Solution:
     "" "
     @param num:整数
    @return:補数
    " ""
     '' '
     一般的な考え方:
     1.バイナリビット[ 2:] を見つけて、0と1を置き換え、最後にint(num 、10 )10進数字は
     `` '
     def findComplement(self、num):
        bin_num = str(bin(num))[ 2 :] 
        bin_num = bin_num.replace(' 0 '' z ' 
        bin_num = bin_num.replace (' 1 '' 0 '
        bin_num = bin_num.replace(' z '' 1 ' 

        return  int(bin_num、2

 

おすすめ

転載: www.cnblogs.com/yunxintryyoubest/p/12729545.html