C13 - Select 2
Editorial
/
Time Limit: 1 sec / Memory Limit: 1024 MB
配点: 1000 点
問題文
N 枚のカードがあり、それぞれ整数 A_1, A_2, \cdots, A_N が書かれています。
相異なるカードを 2 枚選ぶ方法のうち、次の条件を満たすものはいくつありますか。
- 条件:2 枚のカードの積を 1000000007 で割った余りが P になる。
制約
- 2 \leq N \leq 100000
- 0 \leq P \leq 1000000006
- 0 \leq A_i \leq 10^{18}
- 入力はすべて整数
入力
入力は以下の形式で標準入力から与えられます。
N P A_1 A_2 \cdots A_N
出力
答えを整数で出力してください。
入力例 1
4 6 1 2 3 6
出力例 1
2
以下のカードの組を選んだときに、条件を満たします。
- 1 番目のカードと 4 番目のカードを選ぶ。
- 2 番目のカードと 3 番目のカードを選ぶ。
入力例 2
4 1 1000000008 1000000008 1000000008 1000000008
出力例 2
6
書かれている整数が同じであっても、選んだカードの組が異なる場合は区別して数えることに注意してください。
入力例 3
2 609777330 31415926535897932 384626433832795028
出力例 3
1
入力例 4
10 0 0 0 0 0 0 1 2 3 4 5
出力例 4
35