#ABC335G. 离散对数问题

离散对数问题

离散对数问题

题目描述

给定 NN 个整数 A1,,ANA_1,\ldots,A_N 和素数 PP。求同时满足以下条件的整数对 (i,j)(i,j) 的个数:

  • 1i,jN1 \leq i,j \leq N
  • 存在某个正整数 kk,使得 AikAjmodPA_i^k \equiv A_j \bmod P

输入格式

输入按以下格式从标准输入给出。

NN PP
A1A_1 \ldots ANA_N

输出格式

输出答案。

样例

3 13
2 3 5
5

(1,1),(1,2),(1,3),(2,2),(3,3)(1,1),(1,2),(1,3),(2,2),(3,3)55 对满足条件。

例如对于 (1,3)(1,3),取 k=9k=9,则 A19=5125=A3mod13A_1^9 = 512 \equiv 5 = A_3 \bmod 13

5 2
1 1 1 1 1
25
10 9999999999971
141592653589 793238462643 383279502884 197169399375 105820974944 592307816406 286208998628 34825342117 67982148086 513282306647
63

数据范围

  • 所有输入值均为整数
  • 2N2×1052 \leq N \leq 2 \times 10^5
  • 1Ai<P1 \leq A_i \lt P
  • 2P10132 \leq P \leq 10^{13}
  • PP 是素数
难度 省选/NOI-
通过率
尝试 0
已通过 0
ID
3171
类型
传统题
Time Limit
5000ms
Memory Limit
1024MiB
上传者
标签