这一道题是求解最小二乘法,最小二乘法的求法方法有很多。我选取了了一个最简单的方法。就是两个数字相乘除最大公约数的方法。这一道题挺简单的
#include<iostream>
using namespace std;
int gcd(int a, int b)
{
if (b == 0)
return a;
else
return gcd(b, a%b);
}
int lcm(int a, int b)
{
return (a / gcd(a, b))*b;
}
int main()
{
int m,aim=1;
cin >> m;
int a[1000];
while (m--)
{
int n = 0,aim=1;
cin >> n;
for (int i = 0; i < n;i++)
{
cin >> a[i];
aim = lcm(aim, a[i]);
}
cout << aim << endl;
}
return 0;
}