Menu
CoddyTech

Least Common Multiple

给你两个正整数 a 和 b。返回它们的最小公倍数:能被 a 和 b 整除且没有余数的最小正整数。

函数

lcm(a: integer, b: integer) → integer
ainteger
第一个正整数
binteger
第二个正整数
返回值integer
同时是 a 和 b 的倍数的最小正整数

约束条件

  • 1 ≤ a ≤ 106
  • 1 ≤ b ≤ 106
  • 答案可以用有符号 32 位整数表示:lcm(a, b) ≤ 231-1。乘积 a × b 可能不行。

示例

输入
a = 4b = 6
输出
12
解释
6 的倍数从 6、12、18 开始;4 的倍数从 4、8、12 开始。这两个列表中的第一个相同数字是 12。
challenge icon

进阶

你能只用减法和折半,不进行任何除法或取余,求出最大公约数吗?

重置代码
def lcm(a, b):
    # 在这里编写代码

测试 #1

测试 #2

测试 #3

参数

a = 4
b = 6

预期输出

12