http://acm.sdut.edu.cn/judgeonline/showproblem?problem_id=1603
#include<iostream>
using namespace std;
int multiple(long a,long b)
{//最小公倍数函数
int c,p,q;
p=a;
q=b; //a,b不用交换也行;
while(c=a%b)
{
a=b;
b=c;
}
return p/b*q; //b为最大公约数
}
int main()
{ long n,i,m,j,k,a[1000];
cin>>n;
for(i=1;i<=n;i++)
{
cin>>m;
for(j=1;j<=m;j++)
cin>>a[j];
for(k=m-1;k>=1;k--)
{
a[k]=multiple(a[k],a[k+1]);
} //从后向前对a【k】a【k+1】求最小公倍数赋给a【k】;
cout<<a[1]<<endl;
}
return 0;
}