[ARC158D] Equation

题意翻译

$T$ 组数据。每组数据给定一正整数 $n$ 和一不小于 $5$ 的素数 $p$。 试构造三元组 $(x,y,z)$ 满足: * $1 \le x < y < z \le p - 1$ * $(x+y+z)(x^n+y^n+z^n)(x^{2n}+y^{2n}+z^{2n}) \equiv x^{3n}+y^{3n}+z^{3n} (\bmod \space p)$ 能够证明解一定存在。 题目保证 $1 \le T \le {10}^5$,$1 \le n,p \le {10}^9$,$p$ 是素数。

题目描述

[problemUrl]: https://atcoder.jp/contests/arc158/tasks/arc158_d 正整数 $ n $ および,$ 5 $ 以上の素数 $ p $ が与えられます. 次の条件をすべて満たす整数の組 $ (x,y,z) $ を 1 つ求めてください. - $ 1\leq\ x\ <\ y\ <\ z\ \leq\ p\ -\ 1 $. - $ (x+y+z)(x^n+y^n+z^n)(x^{2n}+y^{2n}+z^{2n})\ \equiv\ x^{3n}+y^{3n}+z^{3n}\pmod{p} $. なお,このような組 $ (x,y,z) $ は必ず存在することが証明できます. $ T $ 個のテストケースが与えられるので,それぞれについて答えを求めてください.

输入输出格式

输入格式


入力は以下の形式で標準入力から与えられます. > $ T $ $ \text{case}_1 $ $ \vdots $ $ \text{case}_T $ 各テストケースは以下の形式で与えられます. > $ n $ $ p $

输出格式


$ T $ 行出力してください.$ i $ 行目には $ i $ 番目のテストケースの解を $ (x,y,z) $ とするとき,$ x,y,z $ をこの順に空白区切りで出力してください. 解が複数存在する場合,どれを出力しても正解となります.

输入输出样例

输入样例 #1

3
1 7
2 7
10 998244353

输出样例 #1

1 4 6
1 2 5
20380119 21549656 279594297

说明

### 制約 - $ 1\leq\ T\leq\ 10^5 $ - $ 1\leq\ n\leq\ 10^9 $ - $ p $ は $ 5\leq\ p\leq\ 10^9 $ を満たす素数 ### Sample Explanation 1 ひとつめのテストケースについて, - $ (x+y+z)(x^n+y^n+z^n)(x^{2n}+y^{2n}+z^{2n})\ =\ (1+4+6)(1+4+6)(1+16+36)\ =\ 6413 $ - $ x^{3n}+y^{3n}+z^{3n}\ =\ 1\ +\ 64\ +\ 216\ =\ 281 $ であり,$ 6413\equiv\ 281\pmod{7} $ なので,条件を満たしていることが確認できます.