先算前两个数的最小公倍数,并把此最小公倍数的值赋给第二个数
依次循环
有种贪心的意思
#include<iostream>
using namespace std;
void LCM(unsigned a,unsigned* b){
unsigned m,n,c;
if(a>*b){
m=a;n=*b;
}
else{
m=*b;n=a;
}
c=m%n;
while(c!=0){
m=n;
n=c;
c=m%n;
}
*b=*b*a/n;
}
int main(){
int n,i;
unsigned a[10000];
int result;
while(cin>>n){
for(i=0;i<n;++i){
cin>>a[i];
}
for(i=0;i<n-1;++i){
LCM(a[i],&a[i+1]);
}
cout<<a[i]<<endl;
}
return 0;
}