#include <cstdio>
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
__int64 gcd(__int64 a,__int64 b)
{
if(a < b) swap(a,b);
if(b==0) return a;
return gcd(b,a%b);
}
__int64 ngcd(__int64 *a,__int64 n)
{
if(n==1)return *a;
return gcd(a[n-1],ngcd(a,n-1));
}
__int64 lcm(__int64 a,__int64 b)
{
return a*b/gcd(a,b);
}
__int64 nlcm(__int64 *a,__int64 n)
{
if(n==1)return *a;
return lcm(a[n-1],nlcm(a,n-1));
}
int main()
{
__int64 t,n,i;
__int64 a[100000];
cin>>t;
while(t--)
{
cin>>n;
for(i = 0; i < n; i++)
cin>>a[i];
cout<<nlcm(a,n)<<endl;
}
return 0;
}
求n个数的最大公倍数和最小公约数模板
最新推荐文章于 2024-03-15 14:57:12 发布