Menu
CoddyTech

Least Common Multiple

PoczątkującyMatematyka i symulacjapython iconjava iconcpp iconc iconjs icon+10

Otrzymujesz dwie dodatnie liczby całkowite a i b. Zwróć ich najmniejszą wspólną wielokrotność: najmniejszą dodatnią liczbę całkowitą, przez którą zarówno a, jak i b dzielą się bez reszty.

Funkcja

lcm(a: integer, b: integer) → integer
ainteger
pierwsza dodatnia liczba całkowita
binteger
druga dodatnia liczba całkowita
Zwracainteger
najmniejsza dodatnia liczba całkowita, która jest wielokrotnością zarówno a, jak i b

Ograniczenia

  • 1 ≤ a ≤ 106
  • 1 ≤ b ≤ 106
  • Wynik mieści się w 32-bitowej liczbie całkowitej ze znakiem: lcm(a, b) ≤ 231-1. Iloczyn a × b może się nie mieścić.

Przykłady

Wejście
a = 4b = 6
Wyjście
12
Wyjaśnienie
Wielokrotności 6 zaczynają się od 6, 12, 18; wielokrotności 4 zaczynają się od 4, 8, 12. Pierwszą liczbą na obu listach jest 12.
challenge icon

Pytanie dodatkowe

Czy potrafisz znaleźć NWD bez użycia dzielenia ani reszty z dzielenia, korzystając wyłącznie z odejmowania i dzielenia przez 2?

Zresetuj kod
def lcm(a, b):
    # Napisz tutaj kod

Test #1

Test #2

Test #3

Argumenty

a = 4
b = 6

Oczekiwany wynik

12