题目地址:点击打开链接
思路:原来不用判断大小也可以用辗转相除法,如果小数在前,大数在后,执行第一次gcd时,会把他们的顺序倒过来,还有就是用long long
AC代码:
#include <iostream>
using namespace std;
long long gcd(long long a,long long b)
{
if(b == 0)
return a;
return gcd(b,a%b);
}
int main()
{
int n,i;
long long a,b;
while(cin>>n)
{
a = 1;
for(i=0; i<n; i++)
{
cin>>b;
a = a * b / gcd(b,a);
}
cout<<a<<endl;
}
return 0;
}