我想计算任何整数的 Pisano Period 2 <= m <= 100000
。
此代码目前不适用于m>4
,因为m>4
输出显示是9
。我在下面的代码中做错了什么。
def fib(n):
i=0
f=[]
while(i<=n):
f.append(i)
i+=1
i=2
while(i<=n):
f[i]=f[i-1]+f[i-2]
i+=1
return f[n]
m=int(input())
j=2
p=[0,1,1,2]
while (p[j-1]!=1 and p[j-2]!=0):
h=fib(j)%m
p.append(h)
j+=1
print(len(p))