• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • YouClaw
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
点击加载
博客园    首页    新随笔    联系   管理    订阅  订阅

Least Common Multiple

题目描述

The least common multiple (LCM) of a set of positive integers is the smallest positive integer which is divisible by all the numbers in the set. For example, the LCM of 5, 7 and 15 is 105.

输入

Input will consist of multiple problem instances. The first line of the input will contain a single integer indicating the number of problem instances. Each instance will consist of a single line of the form m n1 n2 n3 ... nm where m is the number of integers in the set and n1 ... nm are the integers. All integers will be positive and lie within the range of a 32-bit integer.

输出

For each problem instance, output a single line containing the corresponding LCM. All results will lie in the range of a 32-bit integer.

样例输入

2

2 3 5

3 4 6 12

样例输出

15

12

解题思路:

题意是给出n个数,求出这些数的最小公倍数,输出,先求前两个数的最小公倍数,再用这个数和第三个数求最小公倍数,依此类推,直到求出来。

代码如下:

 

 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<algorithm>
 4 using namespace std;
 5 //long long b[100000000];
 6 int g(int a,int bb)
 7 {
 8     if(a%bb==0)
 9         return bb;
10     else
11         return g(bb,a%bb);
12 }
13 int main()
14 {
15     int a,i,j,k,q,c,t,d,b;
16     scanf("%d",&a);
17     while(a--) 
18     {
19         scanf("%d",&c);
20         scanf("%d",&b);
21         for(i=0;i<c-1;i++)
22         {
23             scanf("%d",&d);
24             t=g(b,d);
25             b=b*(d/t);
26         }
27         printf("%d\n",b);
28     }
29     return 0;
30 }

 

posted @ 2017-05-02 19:14  点击加载  阅读(263)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3