解题思路:
python在运行递归的时候每次取值都会计算一次这样运行速度就十分的缓慢
但是如果我们将结果放到缓存那么就可以大大提高它的运行速度
注意事项:
参考代码:
from functools import lru_cache
@lru_cache(maxsize=1024)
def muliu(num):
if num <= 4:
return num
else:
return muliu(num - 1) + muliu(num - 3)
my_list = []
for i in range(4):
a = input()
a = int(a)
my_list.append(a)
for x in range(len(my_list)):
if my_list[x] == 0:
break
m = muliu(my_list[x])
print(m)
0.0分
6 人评分