Menu
CoddyTech

Least Common Multiple

Người mớiToán và mô phỏngpython iconjava iconcpp iconc iconjs icon+10

Bạn nhận được hai số nguyên dương a và b. Hãy trả về bội chung nhỏ nhất của chúng: số nguyên dương nhỏ nhất mà cả a và b đều chia hết.

Hàm

lcm(a: integer, b: integer) → integer
ainteger
số nguyên dương đầu tiên
binteger
số nguyên dương thứ hai
Trả vềinteger
số nguyên dương nhỏ nhất là bội số của cả a và b

Ràng buộc

  • 1 ≤ a ≤ 106
  • 1 ≤ b ≤ 106
  • Đáp án nằm trong phạm vi số nguyên có dấu 32 bit: lcm(a, b) ≤ 231-1. Tích a × b có thể không nằm trong phạm vi đó.

Ví dụ

Đầu vào
a = 4b = 6
Đầu ra
12
Giải thích
Các bội số của 6 bắt đầu bằng 6, 12, 18; các bội số của 4 bắt đầu bằng 4, 8, 12. Số đầu tiên xuất hiện trong cả hai danh sách là 12.
challenge icon

Câu hỏi mở rộng

Bạn có thể tìm ước chung lớn nhất mà không dùng phép chia hay phép lấy số dư, chỉ dùng phép trừ và phép chia đôi không?

Đặt lại code
def lcm(a, b):
    # Viết code ở đây

Kiểm thử #1

Kiểm thử #2

Kiểm thử #3

Đối số

a = 4
b = 6

Đầu ra mong đợi

12