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

Коментарі

Ще немає коментарів.