裴蜀定理
什么是裴蜀定理
若 \(a,b\) 是整数,且 \(gcd(a,b)=d\),那么对于任意的整数 \(x\),\(y\), \(ax+by\) 都一定是 \(d\) 的倍数,特别地,一定存在整数 \(x,y\),使 \(ax+by=d\) 成立。
【模板】裴蜀定理
#include<bits/stdc++.h>//万能头文件
using namespace std;
int gcd(int x,int y)
{
return y?gcd(y, x%y):x;//一个简单的求最大公约数的函数
}
int n,a,ans;
int main()
{
cin>>n>>a;
ans=a;//ans先是第一个数,最大公约数是不会超过的
for(int i=2;i<=n;++i)
{
cin>>a;
ans=gcd(ans,abs(a));//每输入一个数就绝对值并求最大公约数
}
cout<<ans<<endl;
return 0;//程序结束
}