Monoxer Programming Contest for Engineers
コンテスト日時
2025/08/08 (Fr) 18:30 - 20:10

L - FF?DLP

ผักชี
2
s
1024
MB
800

問題文

$(A+Bi)^k = x+yi$としたとき、$x \equiv C \pmod{p}$かつ$y \equiv D \pmod{p}$となる最小の非負整数$k$を求めてください。ただし$i^2 = -1$とします。

制約

  • $A$, $B$, $C$, $D$は整数
  • $p$は素数
  • $0 \le A, B, C, D < p$
  • $3 \le p \le 10^9$

入力

$A$ $B$ $C$ $D$ $p$

出力

答えとなる非負整数$k$が存在するときは$k$を、存在しないときは$-1$を1行に出力してください。末尾に改行を加えてください。

入力例 1
2 3 6 1 11
出力例 1
2

$(2 + 3i) ^ 2 = -5 + 12i$となります。

入力例 2
0 1 2 0 13
出力例 2
-1
提出
C++23 (g++ 12.2.0)