#3307. [GESP202506 五级] 最大公因数
[GESP202506 五级] 最大公因数
Description
对于两个正整数 ,他们的最大公因数记为 \gcd(a,b)。对于 k > 3 个正整数 c_1,c_2,\dots,c_k,他们的最大公因数为:
$$\gcd(c_1,c_2,\dots,c_k)=\gcd(\gcd(c_1,c_2,\dots,c_{k-1}),c_k)$$给定 个正整数 a_1,a_2,\dots,a_n 以及 组询问。对于第 i(1 \le i \le q) 组询问,请求出 a_1+i,a_2+i,\dots,a_n+i 的最大公因数,也即 \gcd(a_1+i,a_2+i,\dots,a_n+i)。
Input Format
第一行,两个正整数 ,分别表示给定正整数的数量,以及询问组数。
第二行, 个正整数 a_1,a_2,\dots,a_n。
Output Format
输出共 行,第 行包含一个正整数,表示 a_1+i,a_2+i,\dots,a_n+i 的最大公因数。
5 3
6 9 12 18 30
1
1
3
3 5
31 47 59
4
1
2
1
4
Hint
数据范围
对于 60\% 的测试点,保证 1 \le n \le 10^3,1 \le q \le 10。
对于所有测试点,保证 1 \le n \le 10^5,1 \le q \le 10^5,1 \le a_i \le 1000。
Source
2025年6月GESP C++/Python五级