gpt4 book ai didi

python - comb : any value above 40 returns infinity? 不知道为什么

转载 作者:太空宇宙 更新时间:2023-11-03 14:37:20 25 4
gpt4 key购买 nike

我正在完成一个项目欧拉问题,但是对于任何超过 40 的值,此函数都会返回无穷大。

from scipy.special import comb
def B(x):
product = 1
for i in range(x + 1):
product *= comb(x, i)
return product

我得到了什么

  problem_650.py:10: RuntimeWarning: overflow encountered in double_scalars
product *= comb(x, i)
inf

如能帮助解决此问题,我们将不胜感激。

最佳答案

试试这个:

def B(x):
product = 1
for i in range(x + 1):
product *= comb(x, i, exact=True)
return int(product)

B(40)

它很可能更慢,但是当您从 Euler 项目中执行操作时,我猜您不想近似梳理值,而是使用精确值。

关于python - comb : any value above 40 returns infinity? 不知道为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56885922/

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