设 U=5×105,用数组 freq[v] 统计每个频率值出现次数。
预处理:
则每次查询答案为:
实验室收集了 n 个基准音频信号的频率值,第 i 个频率记为 ai。对于任意两个频率,若其中一个能被另一个整除,则称它们会产生“共鸣”。
现在,工程师将依次进行 m 次检测,每次给定一个待测频率 x,请你计算在已有的 n 个基准频率中,有多少个基准频率可以与 x 产生共鸣。注意:若多个基准频率的数值相同,它们被视为不同的基准信号,均需计入答案。
基准频率的数量 n 和检测次数 m 均不超过 5×105,所有频率值均为不超过 5×105 的正整数。
第一行包含两个整数 n 和 m。 第二行包含 n 个整数 a1,a2,…,an,表示基准频率。 接下来 m 行,每行包含一个整数 x,表示一次检测的待测频率。
对于每次检测,输出一行一个整数,表示能与 x 产生共鸣的基准频率个数。
输入
3 4
2 3 6
6
2
3
5
输出
3
2
2
0
说明
基准频率为 2, 3, 6。
查询 6:能整除 6 的基准频率有 2, 3, 6,而 6 的倍数只有 6,所以共鸣个数为 3+1−1=3。
查询 2:约数有 2,倍数有 2, 6,共鸣数为 1+2−1=2。
查询 3:类似地,共鸣数为 2。
查询 5:没有任何基准频率与 5 有整除关系,答案为 0。
输入
4 3
1 2 2 4
2
4
3
输出
4
4
1
说明
基准频率 1 出现 1 次,2 出现 2 次,4 出现 1 次。
查询 2:约数为 1 和 2,出现次数和为 1+2=3;倍数为 2 和 4,出现次数和为 2+1=3;减去重复的 2 自身次数 2,得 4。所有四个基准均共鸣。
查询 4:约数 1,2,4 次数和 1+2+1=4;倍数仅 4,次数和 1;减去自身 1,得 4。
查询 3:只有 1 能整除 3,次数为 1,故答案为 1。
输入
3 3
7 11 13
7
11
1
输出
1
1
3
说明
基准频率都是质数且互异。
查询 7 时,只有 7 自身满足整除关系,答案为 1+1−1=1。
查询 11 同理得 1。
查询 1 时,1 可以整除所有数,因此所有基准频率均与之共鸣,答案为 3。
输入
1 2
500000
500000
1
输出
1
1
说明
仅有一个基准频率 500000。 查询 500000 时自身共鸣,答案为 1。 查询 1 时,1 整除 500000,同样共鸣,答案为 1。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册