Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
HVT_R2G - Tổng nhỏ nhất |
Với hai số nguyên dương A, B cho trước. Ta dễ dàng tìm được ước chung lớn nhất G và bội chung nhỏ nhất L của hai số A và B.
Bây giờ chúng ta hãy xét bài toán ngược của bài toán trên:
“Cho biết trước ước chung lớn nhất G và bội chung nhỏ nhất L của hai số nguyên dương A và B.
Rõ ràng, sẽ có rất nhiều cặp (A, B) nguyên dương có ước chung lớn nhất là G và bội chung nhỏ nhất là L, tuy nhiên cũng có trường hợp chúng ta không thể tìm được giá trị A, B thỏa mãn. Hãy xác định giá trị nhỏ nhất của tổng A + B, hoặc đưa ra -1 nếu không tìm được cặp (A, B)”.
Input
- Hai số nguyên dương G và L (1 ≤ G ≤ L ≤ 109).
Output
- Số nguyên dương là tổng nhỏ nhất có thể. Trong trường hợp không tìm được hai số A và B thì đưa ra kết quả là -1.
Example1
Input:
2 10
Output:
12
Example2
Input:
2 20
Output:
14
Example3
Input:
3 5
Output:
-1
Giải thích ví dụ:
- Ở ví dụ thứ nhất: Chỉ có cặp (2, 10) thỏa mãn ƯCLN(2,10) = 2, BCNN(2,10) = 10. Nên tổng là 12.
- Ở ví dụ thứ hai: Có hai cặp (2, 20) và (4, 10) thỏa mãn, tổng nhỏ nhất là 14.
- Ở ví dụ thứ ba: Không tìm được cặp nào thỏa mãn ƯCLN là 3 và BCNN là 5.
Được gửi lên bởi: | Vương Trung Hiếu Nghĩa |
Ngày: | 2018-09-07 |
Thời gian chạy: | 1s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | C++ 4.3.2 CPP CPP14 CPP14-CLANG PAS-GPC PAS-FPC |