Tìm ước chung lớn nhất
Xem dạng PDF
Gửi bài giải
Điểm:
10,00
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python
🤔 Mô tả bài toán:
Một kiến trúc sư có một tấm gỗ dài A cm và rộng B cm. Bác muốn cắt toàn bộ tấm gỗ thành các tấm hình vuông bằng nhau có kích thước lớn nhất có thể mà không để lại gỗ thừa.
Yêu cầu: Tìm kích thước cạnh hình vuông lớn nhất đó (bản chất là tìm Ước chung lớn nhất của A và B).
💾 Dữ liệu vào:
Một dòng chứa hai số nguyên dương A và B (1 ≤ A, B ≤ 109).
💻 Dữ liệu ra:
Một số nguyên duy nhất là ước chung lớn nhất của A và B.
🔍 Ví dụ:
| DỮ LIỆU VÀO | DỮ LIỆU RA |
|---|---|
| 24 36 | 12 |
📌 Ràng buộc dữ liệu:
+ Giới hạn số khá lớn nên không thể duyệt từ 1 đến min(A, B). Hãy dùng thuật toán Euclid tối ưu.
⚠️ Lưu ý:
Bài tập yêu cầu nhập dữ liệu từ thiết bị nhập chuẩn (bàn phím/stdin) và xuất kết quả ra thiết bị xuất chuẩn (màn hình/stdout). Tuyệt đối không đọc/ghi từ tệp tin (file).
Bình luận