eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Цікаве рівняння

Цікаве рівняння

Петрик знайшов у книжці цікаве математичне рівняння: \textbf{X^Y mod Z = K} Він швидко навчився знаючи \textbf{X,} \textbf{Y} та \textbf{Z} обчислювати \textbf{K}. Але тепер його зацікавило, як, знаючи \textbf{X}, \textbf{Z} та \textbf{K}, швидко обчислити \textbf{Y}. Допоможіть йому у цьому. \InputFile У першому рядку задано кількість прикладів \textbf{T}, які потрібно розв’язати Петрику (\textbf{0} < \textbf{T} < \textbf{21}), і у наступних \textbf{T} рядках по три числа через пропуск: \textbf{X}, \textbf{Z}, \textbf{K} (\textbf{0} ≤ \textbf{X}, \textbf{Z}, \textbf{K} ≤ \textbf{10 ^9} ). \OutputFile Для кожного прикладу виведіть у окремому рядку мінімально можливе \textbf{Y} (\textbf{0} ≤ \textbf{Y} < \textbf{Z}), або у випадку відсутності розв’язку "\textbf{No Solution}".
Ліміт часу 5 секунд
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
2
5 58 33
2 4 3
Вихідні дані #1
9
No Solution
Джерело POJ Monthly - 2007.07.08, Guo, Huayang