gpt4 book ai didi

python - 计算加泰罗尼亚数字

转载 作者:行者123 更新时间:2023-12-03 01:00:56 25 4
gpt4 key购买 nike

我尝试使用此代码在 Python 中计算加泰罗尼亚数字,但它不起作用。我该如何修复它?

这是我的代码:

def catalan_rec(n):
if n == 0:
return 1
else:
b = 0
for i in range (n):
b += sum((catalan_rec(i))*(catalan_rec(n-1-i)))
return b

最佳答案

问题是你在求和,你实际上应该乘法。来自 Wikipedia定义为:

catalan number formula

您可以更好地使用 for 循环而不是递归:

def catnumber(n):
ans = 1.0
for k in range(2,n+1):
ans = ans *(n+k)/k
return ans

编辑2

我认为公式不正确,但问题实际上是它使用整数除法,因此对子结果进行四舍五入。解决方案是使用浮点变量,我通过使用 ans=1.0 进行初始化来实现此目的。

关于python - 计算加泰罗尼亚数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33958133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com