AT_abc335_g [ABC335G] Discrete Logarithm Problems
题目描述
给定 $N$ 个整数 $A_1,\ldots,A_N$ 和一个素数 $P$。请你计算满足以下条件的整数对 $(i, j)$ 的个数。
- $1 \leq i, j \leq N$。
- 存在某个正整数 $k$,使得 $A_i^k \equiv A_j \pmod{P}$。
输入格式
输入以以下格式从标准输入读入。
> $N$ $P$ $A_1$ $A_2$ $\ldots$ $A_N$
输出格式
请输出答案。
说明/提示
## 限制条件
- $2 \leq N \leq 2 \times 10^5$
- $1 \leq A_i < P$
- $2 \leq P \leq 10^{13}$
- $P$ 是素数
- 所有输入均为整数
## 样例解释 1
满足条件的 $5$ 个数对为 $(1,1),(1,2),(1,3),(2,2),(3,3)$。例如对于 $(1,3)$,取 $k=9$ 时,有 $A_1^9 = 512 \equiv 5 = A_3 \pmod{13}$。
由 ChatGPT 4.1 翻译