Балансировка магических кристаллов

Просмотр в формате PDF

Submit solution


Очки: 140
Ограничение по времени: 2.0s
Ограничение по памяти: 256M

Автор:
Problem types
Allowed languages
C++, Python

У мага есть два магических кристалла с зарядами a и b.

Известно, что наибольший общий заряд этих кристаллов g = gcd(a, b) можно получить, если правильно скомбинировать их энергии: взять x порций энергии первого кристалла и y порций энергии второго кристалла, где x и y — целые числа, не обязательно положительные. Тогда должно выполняться равенство

a * x + b * y = g.

Требуется подобрать такую пару целых чисел x и y.

Если подходящих вариантов несколько, разрешается вывести любой.

Входные данные

В единственной строке через пробел заданы два целых положительных числа a и b — заряды кристаллов.

Выходные данные

Выведите три целых числа g, x, y через пробел:

  • g — наибольший общий заряд кристаллов;
  • x и y — любые целые коэффициенты, для которых выполняется a * x + b * y = g.

Ограничения

  • 1 <= a, b <= 10^9
  • Гарантируется, что существует решение с |x|, |y| <= 10^9. Достаточно вывести любое такое решение.

Примеры

Пример 1

Входные данные

1 1

Выходные данные

1 0 1
Пример 2

Входные данные

1 999999937

Выходные данные

1 1 0

Комментарии

Еще нет ни одного комментария.