[ARC172E] Last 9 Digits
题意翻译
有 $Q$ 次询问,每次给出一个数 $X$,求最小的 $n$ 使得 $n^n\equiv X\pmod{10^9}$。
保证 $X$ 既不是 $2$ 的倍数也不是 $5$ 的倍数。
若无解则输出 $-1$。
题目描述
[problemUrl]: https://atcoder.jp/contests/arc172/tasks/arc172_e
$ n^n $ を $ 10^9 $ で割った余りが $ X $ となるような正の整数 $ n $ が存在するか判定し、存在する場合は最小のものを求めてください。
$ Q $ 個のテストケースが与えられるので、それぞれに対して答えてください。
输入输出格式
输入格式
入力は以下の形式で標準入力から与えられます。ただし、$ i $ 個目 $ (1\ \leq\ i\ \leq\ Q) $ のテストケースにおける $ X $ の値を $ X_i $ とします。
> $ Q $ $ X_1 $ $ X_2 $ $ \vdots $ $ X_Q $
输出格式
$ Q $ 行にわたって出力してください。$ i $ 行目には、$ i $ 個目のテストケースに対する答えを出力してください。ただし、条件を満たす $ n $ が存在しない場合は答えを $ -1 $ とします。
输入输出样例
输入样例 #1
2
27
311670611
输出样例 #1
3
11
说明
### 制約
- $ 1\ \leq\ Q\ \leq\ 10000 $
- $ 1\ \leq\ X\ \leq\ 10^9\ -\ 1 $
- $ X $ は $ 2 $ の倍数でも $ 5 $ の倍数でもない
- 入力はすべて整数
### Sample Explanation 1
この入力例は $ 2 $ 個のテストケースからなります。 - $ 1 $ 個目:$ 3^3\ =\ 27 $ を $ 10^9 $ で割った余りは $ 27 $ なので、$ n\ =\ 3 $ で条件を満たします。 - $ 2 $ 個目:$ 11^{11}\ =\ 285311670611 $ を $ 10^9 $ で割った余りは $ 311670611 $ なので、$ n\ =\ 11 $ で条件を満たします。