10292: Конгруенція
Відправити розв'язок
Бали:
100 (partial)
Time limit:
1.0s
Memory limit:
64M
Author:
Problem type
Allowed languages
Brain****, C, C++, Java, Pascal, Python, v8js
Задано числа \(A,B,C,D,M\).
Знайти мінімальне ціле невід'ємне \(X\) таке, що \((A + C \cdot X) \% M = (B + D \cdot X) \% M\) або визначити, що такого неіснує.
Інша постановка задачі:
На колі є M точок пронумерованих точки від 0 до M-1.
Одна фішка стартує з точки A і щосекунди пересувається на C точок за годинниковою стрілкою.
Друга фішка стартує з точки B і щосекунди пересувається на D точок за годинниковою стрілкою.
Знайти мінімальний час через який фішки зустрінуться або визначити, що цього не станеться ніколи.
Формат вхідних даних
П'ять чисел через пробіл \(A,B,C,D,M\). (\(0 \le A,B,C,D \le 2*10^9\) , \(0 < M < 2.1*10^9\))
Формат вихідних даних
Якщо роз'язка не існує, виведіть Impossible, а якщо існує виведіть мінімально можливе значення \(X\)
Приклад вхідних даних
1 2 3 4 5
Приклад вихідних даних
4
Коментарі