【题目描述】
输入三个正整数,输出这三个数的最小公倍数。
【输入格式】
先输入一行一个数字,表示输入整数个数。
第二行输入各个正整数。
【输出格式】
一行表示这三个数的最小公倍数
【输入样例】
3
15 18 93
【输出样例】
2790
这个本来是想先找最大公倍数,再除一下,结果因为没考虑到输入数字的大小顺序就失败了。
下面这个就是硬算,先把每个数乘起来,再一个一个算,让每个数都能被除尽。
#include<iostream>
using namespace std;
int main()
{
int n;
cin >> n;
cout << endl;
int *a=new int [n];
for(int i=0;i<n;i++)
{
cin >> a[i];
}
int all = a[0] * a[1] * a[2];
for(int j=1;j<all;j++)
{
if((j%a[0]==0)&&(j%a[1]==0)&&(j%a[2]==0))
{
cout << j;
break;
}
}
}