#P2685. 「BalticOI 2013」Brunhilda 的生日 Brunhilda’s Birthday

「BalticOI 2013」Brunhilda 的生日 Brunhilda’s Birthday

题目描述

给定 mm 个素数和 QQ 个询问。每个询问有 nn 个人,每次操作可以任意选择其中的一个素数 pp(素数可以重复使用),然后去掉剩余人数  mod p\bmod p 个人。对于每个询问,我们想知道,至少需要多少步操作才能去掉所有人。

输入格式

第一行:素数个数 mm 和询问个数 QQ(1≤m≤100 000,1≤Q≤100 0001 \le m \le 100\ 000, 1 \le Q \le 100\ 000)

第二行:mm 个素数 pip_i(2≤pi≤10 000 0002 \le pi \le 10\ 000\ 000)

下面 QQ 行:nn(1≤n≤10 000 0001 \le n \le 10\ 000\ 000)

输出格式

QQ 行答案。如果无解,输出 oo。

2 2
2 3
5
6
3
oo

数据范围与提示

对于 20%20\% 的测试数据,m,nj,Q≤10 000m, n_j, Q \le 10\ 000

对于另外 20%20\% 的测试数据,Q=1Q = 1

对于所有数据,$1 \le m \le 100\ 000, 1 \le Q \le 100\ 000, 2 \le p_i \le 10\ 000\ 000, 1 \le n_j \le 10\ 000\ 000$.

翻译来自 abcdabcd987。