Description

求n个整数的最小公倍数

Input

多组测试数据,先输入整数T表示组数 然后每行先输入1个整数n,后面输入n个整数k1 k2...kn

Output

求k1 k2 ...kn的最小公倍数

Sample Input

  1. 1
  2. 3 12 18 6

Sample Output

  1. 36
  1. #include<stdio.h>
  2. int gcd(int x,int y)
  3. {
  4. int t=;
  5. while(t!=)
  6. {
  7. t=x%y;
  8. x=y;
  9. y=t;
  10. }
  11. return x;
  12. }
  13. int lcm(int s[],int n)
  14. {
  15. int num,i;
  16. for(i=;i<n-;i++)
  17. {
  18. num=gcd(s[i],s[i+]);
  19. s[i+]=s[i]/num*s[i+]/num*num;
  20. }
  21. return s[n-];
  22. }
  23. int main()
  24. {
  25. int t,n,m,i;
  26. while(scanf("%d",&t)!=EOF)
  27. {
  28. while(t--)
  29. {
  30. scanf("%d",&n);
  31. int s[n];
  32. for(i=;i<n;i++)
  33. {
  34. scanf("%d",&s[i]);
  35. }
  36. m=lcm(s,n);
  37. printf("%d\n",m);
  38. }
  39. }
  40. }
  1. #include <stdio.h>
  2. /* 欧几里得算法求 数字 a b 的最大公约数 */
  3. int gcd(int a,int b)
  4. {
  5. if(a<b)
  6. {
  7. return gcd(b,a);
  8. }
  9. else if(b==)
  10. {
  11. return a;
  12. }
  13. else
  14. {
  15. return gcd(b,a%b);
  16. }
  17. }
  18.  
  19. /* 数字 a b 的最小公约数 */
  20. int lcm(int a,int b)
  21. {
  22. return a/gcd(a,b)*b; //需要先除再乘,不然int会崩溃
  23. }
  24.  
  25. int main()
  26. {
  27. int n,i,r,t;
  28. int data[n];
  29. while(scanf("%d",&t)!=EOF)
  30. {
  31. while(t--)
  32. {
  33. scanf("%d",&n);
  34. for(i=;i<n;i++)
  35. {
  36. scanf("%d",&data[i]);
  37. }
  38. // 特殊处理只有一个数字的情况
  39. if(n==)
  40. {
  41. r = data[];
  42. }
  43. else
  44. {
  45. // 先求前两个数字的最小公倍数
  46. r = lcm(data[],data[]);
  47. // 求第 i 个数字和前面所有数字的最小公倍数
  48. for(i=;i<n;i++)
  49. {
  50. r = lcm(r,data[i]);
  51. }
  52. }
  53. printf("%d\n",r);
  54. }
  55. }
  56. return ;
  57. }

Problem C: 深入浅出学算法004-求多个数的最小公倍数的更多相关文章

  1. Problem E: 深入浅出学算法019-求n的阶乘

    Problem E: 深入浅出学算法019-求n的阶乘 Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 5077  Solved: 3148 Descrip ...

  2. Problem G: 深入浅出学算法008-求佩尔方程的解

    Description 求关于x y的二次不定方程的解 x2-ny2=1 Input 多组输入数据,先输入组数T 然后输入正整数n(n<=100) Output 对于每组数据输出一行,求y< ...

  3. Problem F: 深入浅出学算法007-统计求和

    Description 求含有数字a且不能被a整除的4位整数的个数,并求这些整数的和 Input 多组测试数据,先输入整数T表示组数然后每组输入1个整数a(1<=a<=9) Output ...

  4. Problem E: 深入浅出学算法006-求不定方程的所有解

    Description 现有一方程ax+by=c,其中系数a.b.c均为整数,求符合条件的所有正整数解,要求按x由小到大排列,其中a b c 均为不大于1000的正整数 Input 多组测试数据,第一 ...

  5. Problem B: 深入浅出学算法003-计算复杂度

    Description 算法复杂度一般分为:时间复杂度.空间复杂度.编程复杂度. 这三个复杂度本身是矛盾体,不能一味地追求降低某一复杂度,否则会带来其他复杂度的增加.在权衡各方面的情况下,降低时间复杂 ...

  6. Problem D: 深入浅出学算法005-数7

    Description 逢年过节,三五好友,相约小聚,酒过三旬,围桌数七. “数七”是一个酒桌上玩的小游戏.就是按照顺序,某人报一个10以下的数字,然后后面的人依次在原来的数字上加1,并喊出来,当然如 ...

  7. Problem H: 深入浅出学算法009-韩信点兵

    Description 秦朝末年,楚汉相争.有一次,韩信将1500名将士与楚王大将李锋交战.苦战一场,楚军不敌,败退回营,汉军也死伤四五百人,于是,韩信整顿兵马也返回大本营.当行至一山坡,忽有后军来报 ...

  8. Problem A: 深入浅出学算法002-n个1

    Description 由n个1组成的整数能被K(K<10000)整除,n至少为多少? Input 多组测试数据,第一行输入整数T,表示组数 然后是T行,每行输入1个整数代表K Output 对 ...

  9. Problem A: 深入浅出学算法022-汉诺塔问题II

    #include<stdio.h> void hanio(int n,char a,char b,char c) { ) printf("%c->%c\n",a, ...

随机推荐

  1. discuz2.5登录后台闪退的解决办法

    今天突然发现discuz2.5论坛后台进不去,开始以为密码错了,但发现登录后也是闪退.我试着清除浏览器cookie,也换了其他浏览器也没有用,还是上网找找吧! discuz2.5进入后台闪退的原因: ...

  2. oracle查看表中数据的大小

    通过从视图 user_segments的字段 bytes中找到 select SUM(bytes)/1024/1024 from user_segments where segment_name='E ...

  3. React Native 快速入门之认识Props和State

    眼下React Native(以后简称RN)越来越火,我也要投入到学习当中.对于一个前端来说,还是有些难度.因为本人觉得这是一个App开发的领域,自然是不同.编写本文的时候,RN的版本为0.21.0. ...

  4. 大数据系列之Hadoop框架

    Hadoop框架中,有很多优秀的工具,帮助我们解决工作中的问题. Hadoop的位置 从上图可以看出,越往右,实时性越高,越往上,涉及到算法等越多. 越往上,越往右就越火…… Hadoop框架中一些简 ...

  5. Machine Learning系列--维特比算法

    维特比算法(Viterbi algorithm)是在一个用途非常广的算法,本科学通信的时候已经听过这个算法,最近在看 HMM(Hidden Markov model) 的时候也看到了这个算法.于是决定 ...

  6. RestTemplate OR Spring Cloud Feign 上传文件

    SpringBoot,通过RestTemplate 或者 Spring Cloud Feign,上传文件(支持多文件上传),服务端接口是MultipartFile接收. 将文件的字节流,放入ByteA ...

  7. java版云笔记(四)

    页面的笔记本加载完成了,接下来就是点击笔记本显示将笔记显示,同时把笔记在右边的编辑器中,同时把编辑后的笔记更新. 注:这个项目的sql文件,需求文档,需要的html文件,jar包都可以去下载,下载地址 ...

  8. 以太坊go-ethereum客户端查询交易列表(二)

    玩过比特币的朋友都知道,比特币是可以通过api(listtransactions)查询指定地址的历史交易的.但在eth中没有提供类似的查询api.今天这篇博客就简单介绍一下如果解决这个问题. 问题 以 ...

  9. django 解决csrf跨域问题

    1.中间件代码 [root@linux-node01 mysite]# tree middlewares middlewares ├── base.py ├── base.pyc ├── cors.p ...

  10. hdu 4726(贪心)

    Kia's Calculation Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...