问题2746--余数的邂逅

2746: 余数的邂逅

[命题人 : ]
时间限制 : 1 sec  内存限制 : 128 MB

提交

题目描述

给定一个长度为 n 的整数数组 a,以及一个正整数 m,请你统计满足以下两个条件的有序数对 (i, j) 的数量:
  1. 下标满足 1 ≤ i < j ≤ n(注:此处 “有序数对” 实际是限定了 i < j 的无序对,避免 (i,j) 和 (j,i) 重复计数,本质是统计数组中位置靠前的元素与位置靠后的元素组成的有效数对);
  2. 两个元素的和对 m 取余结果为 0,即 (a[i] + a[j]) % m == 0。

输入

  1. 数组长度 n:满足 1 ≤ n ≤ 2 × 10^5(即 n 最小为 1,最大为 200000);
  2. 正整数 m:满足 1 ≤ m ≤ 10^5(即 m 最小为 1,最大为 100000);
  3. 数组元素 a[i]:满足 |a[i]| ≤ 10^5(即每个元素的绝对值不超过 100000,元素可以是正整数、负整数或 0)。

输出

一个整数,表示满足条件的数对数量

样例输入 Copy

6 5
1 4 2 3 5 0

样例输出 Copy

3

来源/分类