给出一个长为 n 的序列 a_1,\ldots,a_n。
现有 q 次询问,每次询问给出一个正整数 m,问 a_1,\ldots,a_n 这些数除以 m 的余数有多少种。
输入的第一行有两个正整数 n,q,分别表示序列长度和询问个数。
第二行有 n 个整数 a_1,\ldots,a_n,表示这个序列。
之后有 q 行,每行有一个正整数 m,表示一次询问。
对于每次询问,输出一行一个正整数,表示答案。
6 3 3 1 4 1 5 9 5 2 20
4 2 5
【样例 1 解释】
- 当 m=5 时,a_1,\ldots,a_6 除以 5 的余数分别为 3,1,4,1,0,4,共有 4 种不同的余数。
- 当 m=2 时,a_1,\ldots,a_6 除以 2 的余数分别为 1,1,0,1,1,1,共有 2 种不同的余数。
- 当 m=20 时,a_1,\ldots,a_6 除以 20 的余数分别为 3,1,4,1,5,9,共有 5 种不同的余数。
【数据范围】
对于全部数据,保证 1\le n\le 3000,1\le q\le 1000,1\le m\le 3000,0\le a_i\le 10^9。
本题共有 10 个测试点,部分测试点有特殊限制,具体信息如下:
1:n\leq 2,q\leq 1
2:n\leq 2,q\leq 1000
3,4:n\leq 300,q\leq 1
5,6,7,8:n\leq 300,q\leq 1000
9,10:n\leq 3000,q\leq 1000
提示:10^9 是十亿。
| 时间限制 | 1 秒 |
| 内存限制 | 128 MB |