#GESP520250602. 【GESP-五级】-2025.06-最大公因数

    ID: 212 传统题 1000ms 512MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>GESPGESP五级2025.06最大公约数欧几里得算法差分不变量多组查询

【GESP-五级】-2025.06-最大公因数

题目描述

对于两个正整数 a,b,它们的最大公因数记为 gcd(a,b)。对于 k≥3 个正整数 c₁,c₂,…,cₖ,它们的最大公因数为:

gcd(c₁,c₂,…,cₖ)=gcd(gcd(c₁,c₂,…,cₖ₋₁),cₖ)。

给定 n 个正整数 a₁,a₂,…,aₙ 以及 q 组询问。对于第 i(1≤i≤q)组询问,请求出 a₁+i,a₂+i,…,aₙ+i 的最大公因数,也即 gcd(a₁+i,a₂+i,…,aₙ+i)。

输入格式

第一行,两个正整数 n,q,分别表示给定正整数的数量,以及询问组数。

第二行,n 个正整数 a₁,a₂,…,aₙ。

输出格式

输出共 q 行,第 i 行包含一个正整数,表示 a₁+i,a₂+i,…,aₙ+i 的最大公因数。

样例输入 1

5 3
6 9 12 18 30

样例输出 1

1
1
3

样例输入 2

3 5
31 47 59

样例输出 2

4
1
2
1
4

数据范围

对于 60% 的测试点,保证 1≤n≤10³,1≤q≤10;对于所有测试点,保证 1≤n,q≤10⁵,1≤aᵢ≤1000。