題目連結: https://zerojudge.tw/ShowProblem?problemid=d693
# 解題思路 01
運用輾轉相除法!!將 gcd 寫出來,再套公式就好啦
# 程式碼 01
#include <iostream> | |
using namespace std; | |
int gcd(int a,int b){ | |
int r; | |
do | |
{ | |
r=a%b; | |
a=b; | |
b=r; | |
}while(r); | |
return a; | |
} | |
int main() { | |
int N; | |
while( cin >> N && N!=0 ) { | |
long long a = 1,b; | |
for(int i=0; i<N; i++) { | |
cin >> b ; | |
a = (a * b) /gcd(a,b) ; | |
} | |
cout << a << endl ; | |
} | |
return 0; | |
} |
# 解題思路 02
<algorithm>
中有求最大公倍數的函式ㄟ~
就直接用他套題目的公式吧!!(我就懶)
# 程式碼
#include <iostream> | |
#include <algorithm> | |
using namespace std; | |
int main() { | |
int N; | |
while( cin >> N && N!=0 ) { | |
long long a = 1,b; | |
for(int i=0; i<N; i++) { | |
cin >> b ; | |
a = (a * b) /__gcd(a,b) ; | |
} | |
cout << a << endl ; | |
} | |
return 0; | |
} |