LeetCode 476 數字的補數

2021-08-22 11:36:51 字數 853 閱讀 9163

給定乙個正整數,輸出它的補數。補數是對該數的二進位制表示取反。

注意:

給定的整數保證在32位帶符號整數的範圍內。

你可以假定二進位制數不包含前導零位。

示例 1:

輸入: 5

輸出: 2

解釋: 5的二進位制表示為101(沒有前導零位),其補數為010。所以你需要輸出2。

示例 2:

輸入: 1

輸出: 0

解釋: 1的二進位制表示為1(沒有前導零位),其補數為0。所以你需要輸出0。

class solution:

def findcomplement(self, num):

""":type num: int

:rtype: int

"""str = bin(num)[2::]

list1 =

for i in str:

if i == "0":

i = 1

elif i == "1":

i = 0

print("二進位制補數為",list1)

list1.reverse()

num = 0

count = 0

for j in list1:

num += j * (2 ** count)

count += 1

return num

s1 = solution()

print(s1.findcomplement(8))

leetcode 476 數字的補數

給定乙個正整數,輸出它的補數。補數是對該數的二進位制表示取反。注意 給定的整數保證在32位帶符號整數的範圍內。你可以假定二進位制數不包含前導零位。示例 1 輸入 5輸出 2解釋 5的二進位制表示為101 沒有前導零位 其補數為010。所以你需要輸出2。示例 2 輸入 1輸出 0解釋 1的二進位制表示...

Leetcode 476 數字的補數

給定乙個正整數,輸出它的補數。補數是對該數的二進位制表示取反。注意 給定的整數保證在32位帶符號整數的範圍內。你可以假定二進位制數不包含前導零位。示例 1 輸入 5 輸出 2 解釋 5的二進位制表示為101 沒有前導零位 其補數為010。所以你需要輸出2。示例 2 輸入 1 輸出 0 解釋 1的二進...

LeetCode 476 數字的補數

給定乙個正整數,輸出它的補數。補數是對該數的二進位制表示取反。注意 給定的整數保證在32位帶符號整數的範圍內。你可以假定二進位制數不包含前導零位。示例 1 輸入 5 輸出 2 解釋 5的二進位制表示為101 沒有前導零位 其補數為010。所以你需要輸出2。示例 2 輸入 1 輸出 0 解釋 1的二進...