题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1019
题目大意:求n个数的最大公约数
关键思想:最大公倍数等于乘积除以最大公约数。LCM具有结合律和交换律
代码如下
//求最大公倍数。
#include <iostream>
using namespace std;
typedef long long ll;
ll gcd(ll a,ll b){
return a%b==0?b:gcd(b,a%b);
}
ll lcm(ll a,ll b){
return a*b/gcd(a,b);//最大公倍数等于乘积除以最大公约数
}
int main(){
int T,n;
ll a,ans;
cin>>T;
while(T--){
ans=1;
cin>>n;
for(int i=0;i<n;i++){
cin>>a;
ans=lcm(ans,a);
}
cout<<ans<<endl;
}
return 0;
}
来源:https://www.cnblogs.com/G-M-WuJieMatrix/p/6420810.html