题目:
思路:
(1)首先字符串计数:直接计算出每段的连续数字长度
(2)只需统计相同的字符个数,遇到不同的,选择二者计数的最小值即可
提示:使用双指针来统计连续数字长度
代码:
class Solution:
def countBinarySubstrings(self, s):
count = []
num = 0
i = 0
for j in range(1,len(s)):
if s[i] != s[j]:
count.append(j - i)
i = j
count.append(len(s)-i)
for i in range(len(count)-1):
num = num + min(count[i],count[i+1])
return num
if __name__ == '__main__':
print('s=')
s = str(input())
w = Solution()
num = w.countBinarySubstrings(s)
print('num = ',num)