zoukankan      html  css  js  c++  java
  • 问题 A: 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

    题意 有T组数据 每组首先给一个n 然后有n个数 问这个n个数的最小公倍数是多少
    #include<bits/stdc++.h>
    
    using namespace std;
    int gcd(int a,int b)
    {
        if(b==0) return a;
        return gcd(b,a%b);
    }
    int main()
    {
        int T;
        scanf("%d",&T);
        while(T--){
            int n;
            scanf("%d",&n);
            int d=1;//小技巧 可以把d设置成1
            for(int i=0;i<n;i++){
                int x;
                scanf("%d",&x);
                d=d/gcd(d,x)*x;//第一次时 gcd=1  这种写法防止溢出
            }
            printf("%d
    ",d);
        }
        return 0;
    }
  • 相关阅读:
    今天晚上有个什么样的博文呢
    STM8CubeMx来了
    开博啦
    Authentication
    文件上传设计要点
    分布式杂记
    SQL Server 知识集
    C# 集合使用误区
    网络知识集
    关于 elasticsearch 近实时特征的思考
  • 原文地址:https://www.cnblogs.com/chenchen-12/p/10139699.html
Copyright © 2011-2022 走看看