TỔNG NHỎ NHẤT

(tongnn.*)

Trong tiết học môn Toán về chủ đề tìm ước chung lớn nhất (UCLN), bội chung nhỏ nhất (BCNN) của hai số nguyên dương \(a,b\), Bình dễ dàng tìm được \(UCLN(a,\ b)\)\(m\), \(BCNN(a,\ b)\)\(n\). Hôm nay, cô giáo đưa ra bài toán sau:

“Cho trước hai số nguyên dương \(m\) \(n\). Nếu tìm được một hoặc nhiều cặp số \((a,\ b)\) thỏa mãn \(UCLN(a,\ b)\) \(= \ m\), \(BCNN(a,\ b)\ = \ n\) thì đưa ra giá trị nhỏ nhất của tổng \(A + B\), ngược lại đưa ra \(- 1\)”.

Bình đang loay hoay tìm cách giải. Bạn hãy giúp Bình giải bài toán trên.

Yêu cầu: Tìm giá trị nhỏ nhất của tổng \(A\ + \ B\), nếu không tìm được cặp số \((A,\ B)\) nào thì đưa ra \(- 1\).

Dữ liệu vào:

+ Hai số nguyên dương \(m,\ n\ (1\ \leq \ m\ \leq \ n\ \leq \ 10^{12})\). Các số cách nhau bởi một dấu cách trống.

Kết quả: Ghi một số nguyên là kết quả tìm được. Ví dụ:

Input

Output

Giải thích
2 10 12 Có cặp (2, 10) thỏa mãn UCLN(2, 10) = 2, BCNN(2, 10) = 10, tổng nhỏ nhất A + B = 12.
2 20 14 Có hai cặp (2, 20) và (4, 10) thỏa mãn, tổng nhỏ nhất A + B = 14.
3 5 -1 Không tìm được cặp số (A, B) nào thỏa mãn.

Giới hạn:

  • 60% số test với \(1\ \leq \ m\ \leq \ n\ \leq \ 10^{6}\)

  • 20% số test với \(10^{6}\ < \ m\ \leq \ n\ \leq \ 10^{9}\ \)

  • 20% số test với \(10^{9}\ < \ m\ \leq \ n\ \leq \ 10^{12}\)

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. trungnam (6/7)
  2. sythai (5/8)
  3. npk1605 (5/10)
Trong 7 ngày
  1. nguyenanhvu (40/64)
  2. khieuquan (35/59)
  3. ngokhang (27/55)
Trong 30 ngày
  1. quechi (85/105)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38905

Lưu Hải Phong - 2020
[email protected]