#include<bits/stdc++.h>
using namespace std;
int n,q,a[100005],gcd,b;
int main()
{
cin>>n>>q;
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
for(int i=1;i<=q;i++){
gcd=__gcd(a[1]+i,a[2]+i);
for(int j=2;j<n;j++){
gcd=__gcd(gcd,__gcd(a[j]+i,a[j+1]+i));
if(gcd==1) break;
}
printf("%d\n",gcd);
}
}
我用了较快的输入输出方式,但还是超时了。
第15行gcd为1就直接跳出,也没有帮助。
求指教……