【ZCX-004-DIV3】C. 模运算
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目背景
小程最近在学习取模运算,小智决定出几道查询题来考考他。
题目描述
小智给了小程一个长为 的序列 。
现在有 次询问,每次询问会给出一个正整数 。
对于每次询问,小程需要回答:
序列中的这些数除以 后,余数一共有多少种不同的取值?
更形式化地说,对于每次给定的 ,需要统计集合:
$$\{a_1 \bmod m,\ a_2 \bmod m,\ \ldots,\ a_n \bmod m\}$$中不同元素的个数。
输入格式
第一行两个正整数 ,分别表示序列长度和询问个数。
第二行 个整数 ,表示给定序列。
接下来 行,每行一个正整数 ,表示一次询问。
输出格式
对于每次询问,输出一行一个正整数,表示不同余数的个数。
输入输出样例 #1
输入 #1
6 3
3 1 4 1 5 9
5
2
20
输出 #1
4
2
5
说明
【样例 1 解释】
- 当 时, 除以 的余数分别为 ,共有 种不同的余数。
- 当 时, 除以 的余数分别为 ,共有 种不同的余数。
- 当 时, 除以 的余数分别为 ,共有 种不同的余数。
数据范围
$$1\le n\le 3000,\quad 1\le q\le 1000,\quad 1\le m\le 3000,\quad 0\le a_i\le 10^9$$测试点说明
| 测试点编号 | ||
|---|---|---|
提示: 是十亿。