EduBrick

НОД и НОК

1000 мс · 256 МБ · всё или ничего

Найдите наибольший общий делитель и наименьшее общее кратное двух чисел.

НОД считается алгоритмом Евклида за O(log⁡min⁡(a,b))O(\log \min(a,b)). НОК получается из него: lcm⁡(a,b)=abgcd⁡(a,b)\operatorname{lcm}(a,b) = \frac{ab}{\gcd(a,b)}.

Формат ввода

Два числа aa и bb (1≤a,b≤10181 \le a, b \le 10^{18}).

Формат вывода

Выведите НОД и НОК через пробел. Если НОК превосходит 101810^{18}, вместо него выведите −1-1.

Примеры

ввод
6 9
вывод
3 18
ввод
1000000000000000000 999999999999999999
вывод
1 -1
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.