【发布时间】:2021-08-05 19:58:39
【问题描述】:
假设我输入一个类似 [0,0,1,1,1,0] 的列表,程序应该打印 2。我写了一个这样的简单程序:
def count11(seq):
n= len(seq)
print (n)
cnt=0
#i=0;
print(cnt)
#print(i)
for i in range (0,n):
if(seq[i] and seq[i+1]==1):
cnt+=1;
#i+=1;
return cnt
print(count11([0, 0, 1, 1, 1, 0]))
但这种情况在极端情况下不会起作用。就像 if len(seq)=5 and at i=4 循环将显示错误。 你能帮我解决这个问题吗?提前致谢。
【问题讨论】:
-
修复不明显?
-
这可能很明显。但我找不到明显的修复方法
-
所以如果你在屋顶上工作,你总是向边缘走五步,而第五步总是让你从屋顶上掉下来,你是否也去家装论坛问该怎么办? ,而不是简单地不迈出第五步而只迈出四步?这太荒谬了。
-
提示:用KMP算法可以找到pattern(11)的起始索引
-
@archzi 你也可以买一辆奔驰去拜访住在10米外的邻居。
标签: python-3.x probability probability-theory