atcoder#ABC270G. [ABC270G] Sequence in mod P

[ABC270G] Sequence in mod P

题目描述

次の漸化式で定められる数列 X=(X0,X1,) X=(X_0,X_1,\ldots) があります。

$ X_i\ =\ \left\{ \begin{array}{ll} S\ \ (i\ =\ 0)\\ (A\ X_{i-1}+B)\ \bmod\ P\ \ (i\ \geq\ 1) \end{array} \right. $

Xi=G X_i=G となる i i が存在するか判定し、存在するならばそのような最小の i i を求めてください。
ここで、x mod y x\ \bmod\ y は、x x y y で割ったあまり(最小非負剰余)を表すものとします。

1 1 ファイルにつき T T 個のテストケースが与えられます。

输入格式

入力は以下の形式で標準入力から与えられる。

T T case1 \mathrm{case}_1 case2 \mathrm{case}_2 \vdots caseT \mathrm{case}_T

各テストケースは以下の形式で与えられる。

P P A A B B S S G G

输出格式

T T 行出力せよ。
t t 行目には、caset \mathrm{case}_t について、Xi=G X_i=G となる最小の i i を出力せよ。そのような i i が存在しないならかわりに -1 を出力せよ。

题目大意

对于某个无穷序列 {X}\{X\},构造如下:

$$X_i = \begin{cases} S & i=0 \\ (A\times X_{i-1}+B)\bmod P & i \geq 1 \end{cases} $$

求最小的 ii 满足 Xi=GX_i=G,没有输出 -1

多组数据,记 TT 为数据组数,则有 1T1001\le T\le100

保证 PP 是质数,2P1092\le P\le10^9

保证 0A,B,S,G<P0\le A,B,S,G< P

3
5 2 1 1 0
5 2 2 3 0
11 1 1 0 10
3
-1
10

提示

制約

  • 1  T  100 1\ \leq\ T\ \leq\ 100
  • 2  P  109 2\ \leq\ P\ \leq\ 10^9
  • P P は素数
  • 0 A,B,S,G < P 0\leq\ A,B,S,G\ <\ P
  • 入力に含まれる値は全て整数である

Sample Explanation 1

1 1 番目のケースについて、X=(1,3,2,0,) X=(1,3,2,0,\ldots) であることから、Xi=0 X_i=0 となる最小の i i 3 3 です。 2 2 番目のケースについて、X=(3,3,3,3,) X=(3,3,3,3,\ldots) であることから、Xi=0 X_i=0 となる i i は存在しません。