原题地址-Luogu

裴蜀定理
对于整数a,b和正整数x,y,ax+by=c成立的充要条件是gcd(a,b)%c=0.
推论:a,b互质的充要条件是存在整数x,y,使ax+by=1.
拓展:对于n个整数a1,a2,......,an,a1*x1+a2*x2+......+an*xn=S成立的充要条件是gcd(a1,a2,......an)%S=0.
AC 代码
//#pragma GCC optimize(2)
//std::ios::sync_with_stdio(0)
//clock_t st=clock();
#include<bits/stdc++.h>
#define abss(x) ((x)>(0)?(x):(-1)*(x))
#define maxs(a,b) ((a)>(b)?(a):(b))
#define mins(a,b) ((a)<(b)?(a):(b))
#define FOR(i,a,b) for(int i=(a);i<=(b);++i)
#define ROF(i,a,b) for(int i=(a);i>=(b);--i)
#define mem(a) memset(a,0,sizeof(a))
const int INF (1<<30);
const int inf (-1<<30);
using namespace std;
int main(){
int n;
cin>>n;
int ans=0,t;
FOR(i,1,n){
scanf("%d",&t);
t=abss(t);
ans=__gcd(ans,t);
}
cout<<ans;
}










