#B4422. [语言月赛 202510] 同余查询

[语言月赛 202510] 同余查询

题目描述

给出一个长为 nn 的序列 a1,,ana_1,\ldots,a_n

现有 qq 次询问,每次询问给出一个正整数 mm,问 a1,,ana_1,\ldots,a_n 这些数除以 mm 的余数有多少种。

输入格式

输入的第一行有两个正整数 n,qn,q,分别表示序列长度和询问个数。

第二行有 nn 个整数 a1,,ana_1,\ldots,a_n,表示这个序列。

之后有 qq 行,每行有一个正整数 mm,表示一次询问。

输出格式

对于每次询问,输出一行一个正整数,表示答案。

6 3
3 1 4 1 5 9
5
2
20

4
2
5

提示

【样例 1 解释】

  • m=5m=5 时,a1,,a6a_1,\ldots,a_6 除以 55 的余数分别为 3,1,4,1,0,43,1,4,1,0,4,共有 44 种不同的余数。
  • m=2m=2 时,a1,,a6a_1,\ldots,a_6 除以 22 的余数分别为 1,1,0,1,1,11,1,0,1,1,1,共有 22 种不同的余数。
  • m=20m=20 时,a1,,a6a_1,\ldots,a_6 除以 2020 的余数分别为 3,1,4,1,5,93,1,4,1,5,9,共有 55 种不同的余数。

【数据范围】

对于全部数据,保证 1n30001\le n\le 30001q10001\le q\le 10001m30001\le m\le 30000ai1090\le a_i\le 10^9

本题共有 1010 个测试点,部分测试点有特殊限制,具体信息如下:

测试点编号 nn\le qq\le
11 22 11
22 10001000
3,43,4 300300 11
585\sim 8 10001000
9,109,10 30003000

提示:10910^9 是十亿。