2028 Lowest Common Multiple Plus

Problem Description

求n个数的最小公倍数。




Input

输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数。




Output

为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行。你可以假设最后的输出是一个32位的整数。




Sample Input

2 4 6
3 2 5 7





Sample Output

12
70

code:

 1 #include<iostream>
 2 using namespace std;
 3 
 4 int gcd(int a, int b)
 5 {
 6     int n;
 7     if(a<b)
 8     {
 9         n=a;a=b;b=n;
10     }
11     while(b!=0)
12     {
13         n=b;
14         b=a%b;
15         a=n;
16     }
17     return a;
18 }
19 int lcm(int a, int b)
20 {
21     return a/gcd(a,b)*b;
22 }
23 
24 int main(){
25     int n,i;
26     int lacm,num;
27     while(cin >> n)
28     {
29         for(i=0;i<n;i++)
30         {
31             cin >> num;
32             if(i>0)
33                 lacm=lcm(lacm,num);
34             else
35                 lacm=num;
36         }
37         cout << lacm <<endl;
38     }
39     return 0;
40 }

 

posted on 2014-01-02 13:43  acm_shun  阅读(172)  评论(0编辑  收藏  举报

导航