Refused

86 阅读1分钟

#include<bits/stdc++.h> using namespace std; #define LL long long LL gcd(LL a,LL b) { return (b>0)?gcd(b,a%b):a; } LL a[200100], b[200100]; int main() { int n, m; scanf("%d %d", &n, &m); LL pre, mcm, b; for(int i = 1; i <= n; i++) { scanf("%lld", &a[i]); }

if(n == 1)
{
    for(int i = 1; i <= m; i++)
    {
        scanf("%lld", &b);
        printf("%lld", a[1] + b);
        if(i != m)cout<<" ";
    }
    cout<<endl;
}
else
{
    mcm = a[2] - a[1];

    for(int i = 2; i <= n; i++)
    {
        //cout<<"yes"<<mcm<<" "<<a[i] - a[i-1]<<endl;
        mcm = gcd(mcm, abs(a[i]-a[i-1]));

    }

    for(int i = 1; i <= m; i++)
    {
        scanf("%lld", &b);
        printf("%lld", gcd(a[1] + b, mcm));
        if(i != m)cout<<" ";
    }
    cout<<endl;
}
return 0;

}