Menu
CoddyTech

Least Common Multiple

İki pozitif tam sayı a ve b alırsın. Bunların en küçük ortak katını döndür: hem a hem de b tarafından kalansız bölünebilen en küçük pozitif tam sayı.

Örneğin, 6 sayısının katları 6, 12, 18, 24 ve böyle devam eder; 8 sayısının katları 8, 16, 24 ve böyle devam eder ve her iki listedeki ilk sayı 24 olur.

Fonksiyon

lcm(a: integer, b: integer) → integer
ainteger
ilk pozitif tam sayı
binteger
ikinci pozitif tam sayı
Döndürürinteger
a ve b'nin her ikisinin de katı olan en küçük pozitif tam sayı

Kısıtlar

  • 1 ≤ a ≤ 106
  • 1 ≤ b ≤ 106
  • Yanıt, işaretli 32 bitlik bir tam sayıya sığar: lcm(a, b) ≤ 231-1. a × b çarpımı sığmayabilir.

Örnekler

Girdi
a = 4b = 6
Çıktı
12
Açıklama
6'nın katları 6, 12, 18 diye başlar; 4'ün katları 4, 8, 12 diye başlar. Her iki listedeki ilk sayı 12'dir.

lock iconGönderirken +15 gizli test

challenge icon

Ek soru

Bölme ya da kalan işlemi hiç kullanmadan, yalnızca çıkarma ve ikiye bölme işlemleriyle EBOB'u bulabilir misin?

Kodu sıfırla
def lcm(a, b):
    # Kodu buraya yazın
Test durumları

Durum 1

Durum 2

Durum 3

Girdi

a = 4
b = 6

Beklenen

12