gpt4 book ai didi

python - n 个数的最小公倍数,使用递归

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

我需要编写一个递归函数,它找到长度为 n 的列表的最小公倍数元素。我的代码:

import random

def random_num(n):
return [random.randint(-20,20) for i in range(n)]

def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)

def my_nok(n,m):
return (n/gcd(n,m))*m

第一个问题是:我的函数只适用于两个参数,而不适用于整个列表。

第二个问题:我需要唯一一个函数来找到最小公倍数(我的代码包含两个函数)。

最佳答案

您需要在列表中重复出现一些内容,例如以下内容。如果列表中有 2 个元素,请执行正常的 LCM。如果更长,则在列表尾部重复出现,然后使用该结果和第一个元素执行 LCM。

def lcm(in_list):
if len(in_list) == 2:
# Do your normal LCM computation here
else:
return lcm([in_list[0], lcm(in_list[1:]))

关于python - n 个数的最小公倍数,使用递归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37599568/

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