atcoder#ABC212G. [ABC212G] Power Pair

[ABC212G] Power Pair

配点 : 600600

問題文

素数 PP が与えられます。

以下の条件を満たす整数の組 (x,y)(x, y) はいくつありますか?

  • 0xP10 \leq x \leq P-1
  • 0yP10 \leq y \leq P-1
  • ある正整数 nn が存在して、xny(modP)x^n \equiv y \pmod{P} を満たす

ただし答えは非常に大きくなる可能性があるので、998244353998244353 で割った余りを出力してください。

制約

  • 2P10122 \leq P \leq 10^{12}
  • PP は素数

入力

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

PP

出力

答えを 998244353998244353 で割った余りを出力せよ。

3
4

(x,y)=(0,0),(1,1),(2,1),(2,2)(x, y) = (0, 0), (1, 1), (2, 1), (2, 2)44 組が条件を満たします。

11
64
998244353
329133417