Menu
CoddyTech

Least Common Multiple

Даны два положительных целых числа a и b. Верните их наименьшее общее кратное: наименьшее положительное целое число, на которое и a, и b делятся без остатка.

Например, кратные 6 — это 6, 12, 18, 24 и так далее, кратные 8 — это 8, 16, 24 и так далее, а первое число в обоих списках — 24.

Функция

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.

lock icon+15 скрытых тестов при отправке

challenge icon

Дополнительный вопрос

Можешь найти НОД, совсем не используя деление или остаток, а только вычитание и деление пополам?

Сбросить код
def lcm(a, b):
    # Напишите код здесь
Тестовые случаи

Случай 1

Случай 2

Случай 3

Ввод

a = 4
b = 6

Ожидается

12