int gcd(int a,int b) //求最大公约数
{
if(b==0)
return a;
else
return gcd(b,a%b);
}
int multi_gcd(int a[],int n) //求多个数的最大公约数
{
int ans = gcd(a[0],a[1]);
for(int i=2;i<n;i++)
{
ans = gcd(ans,a[i]);
}
return ans;
}
{
if(b==0)
return a;
else
return gcd(b,a%b);
}
int multi_gcd(int a[],int n) //求多个数的最大公约数
{
int ans = gcd(a[0],a[1]);
for(int i=2;i<n;i++)
{
ans = gcd(ans,a[i]);
}
return ans;
}
int lcm(int a,int b) //最小公倍数
{
return a/gcd(a,b)*b; //防止a*b溢出,先除后乘
}
{
return a/gcd(a,b)*b; //防止a*b溢出,先除后乘
}