子串能表示從1到N數字的二進位制串 python

2021-09-22 22:58:30 字數 656 閱讀 3019

題目描述:

給定乙個二進位制字串s(乙個僅由若干 '0' 和 '1' 構成的字串)和乙個正整數n,如果對於從1n的每個整數x,其二進位制表示都是s的子串,就返回true,否則返回false

示例1:

輸入:s = "0110", n = 3

輸出:true

示例2:

輸入:s = "0110", n = 4

輸出:false

1 <= s.length <= 10001 <= n <= 10^9

class solution:

def querystring(self, s: str, n: int) -> bool:

#思路:遍歷從1到n每乙個數字,將數字轉換為二進位制字串,判斷該字串是否在s中

for i in range(1,n+1):

if bin(i)[2:] not in s:

return false

return true

菜鳥一枚,**僅供參考,如有問題,望指正~

1的二進位制表示

我們已經知道計算機中,所有資料最終都是使用二進位制數表達。我們也已經學會如何將乙個10進製數如何轉換為二進位制數。不過,我們仍然沒有學習乙個負數如何用二進位制表達。比如,假設有一 int 型別的數,值為5,那麼,我們知道它在計算機中表示為 00000000 00000000 00000000 000...

二進位制表示中1的個數

28.整數的二進位制表示中1的個數 運算 題目 輸入乙個整數,求該整數的二進位制表達中有多少個1。例如輸入10,由於其二進位制表示為1010,有兩個1,因此輸出2。分析 這是一道很基本的考查位運算的面試題。包括微軟在內的很多公司都曾採用過這道題。如果位數只有八位,使用查表法時間複雜度只有o 1 co...

二進位制表示中 1 的個數

輸入乙個整數,輸出該數二進位制表示中1的個數。其中負數用補碼表示。需要注意的是 右移運算子是將乙個二進位制數按指定移動的位數向右移動。移動過程中,正數最高位補0,負數最高位補1,無符號數最高位補0。因此 右移整數,遇到負數的測試序列會導致陷入死迴圈 if n 1 1 n n 1 考慮左移 1,按位與...