使用Python检查二进制字符串是否最多只有一个连续的1段
假设我们有一个二进制字符串s(没有前导零),我们需要检查s是否包含最多一个连续的1段。
因此,如果输入类似于s = "11100",则输出将为True,因为只有一个连续的1段"111"。
为了解决这个问题,我们将遵循以下步骤:
count := -1
如果s的长度为1,则
返回True
对于s中的每个i:
如果i等于"1"并且count > -1,则
返回False
否则,如果i等于"0",则
count := count + 1
返回True
让我们看看下面的实现来更好地理解:
示例
def solve(s): count = -1 if len(s)==1: return True for i in s: if i=="1" and count>-1: return False elif i=="0": count+=1 return True s = "11100" print(solve(s))
输入
11100
输出
True
广告