Returns the least common multiple of a list of numbers.
Use functools.reduce()
, math.gcd()
and lcm(x,y) = x * y / gcd(x,y)
over the given list.
代码实现
from functools import reduce
from math import gcd
def lcm(numbers):
return reduce((lambda x, y: int(x * y / gcd(x, y))), numbers)
使用样例
lcm([12, 7]) # 84
lcm([1, 3, 4, 5]) # 60