10605: Розширений алгоритм Евкліда
Відправити розв'язок
Бали:
100 (partial)
Time limit:
1.0s
Memory limit:
256M
Author:
Problem type
Allowed languages
Brain****, C++, Java, Pascal, Python, v8js
Ще з часів Евкліда відомо, що для довільних натуральних чисел a та b завжди існують такі цілі x та y, що ax + by = d, де d - найбільший спільний дільник a та b. В цій задачі за заданими a та b слід знайти відповідні x, y та d.
Формат вхідних даних
два натуральних числа \(A,B\) (\(1 \le A,B \le 10^9\))
Формат вихідних даних
Вивести три цілі числа \(D,X,Y\), розділені пропуском.
Якщо шуканих значень x та y декілька, то слід вивести таку пару, для якої значення |x| + |y| найменше.
Якщо і таких пар декілька, то вивести ту пару, в якій x мінімальне.
Приклад вхідних даних-1
3
2
Приклад вихідних даних-1
1 1 -1
Приклад вхідних даних-2
4
2
Приклад вихідних даних-2
2 0 1
Коментарі