//求最小公倍数//思路:先求两个数的最小公倍数,前两个数的最小公倍数与第三个数再求最小公倍数,求出最小公倍数后接着与第四个数相求。//求两个数的最小公倍数:利用辗转相除法#include <iostream>using namespace std;int gcd(int a,int b);int main(){ int row,col; cin>>row; for(int i=0;i<row;i++) { cin>>col; //smallmul代表最小公倍数,gcdnum代表最大公约数 int a,smallmul,gcdnum; cin>>a; smallmul=a; for(int j=1;j<col;j++) { cin>>a; gcdnum = gcd(smallmul,a); smallmul=gcdnum*(smallmul/gcdnum)*(a/gcdnum); } cout<<smallmul<<endl; } return 0;}//辗转相除法求两个数的最大公约数int gcd(int a,int b){ int r=a % b; if(r==0) return b; else gcd(b,a % b);}
转载于:https://www.cnblogs.com/north_dragon/archive/2010/04/25/1720698.html