hdu 1019 Least Common Multiple

Posted 行尸走肉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hdu 1019 Least Common Multiple相关的知识,希望对你有一定的参考价值。

Least Common Multiple

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 44922    Accepted Submission(s): 16877


Problem Description
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
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.
 

 

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

 

Sample Input
2 3 5 7 15 6 4 10296 936 1287 792 1
 

 

Sample Output
105 10296
 
直接算就可以了,没输入一个数求当前数和前两个数的最小公倍数的最小公倍数。
 
#include<iostream>
#include<stdio.h>
using namespace std;
long long gcd(long long x,long long y)
{
    long long a;
    if(x<y) a=x,x=y,y=a;
    while(y!=0)
    {
        a=x%y;
        x=y;
        y=a;
    }
    return x;
}
int main()
{
    int t,n;
    long long tmp,end;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d",&n);
        end=1;
        for(int i=0;i<n;i++)
        {
            scanf("%I64d",&tmp);
            end=(tmp*end)/(gcd(tmp,end));
        }
        printf("%I64d\\n",end);
    }
    return 0;
}
View Code

 

 

以上是关于hdu 1019 Least Common Multiple的主要内容,如果未能解决你的问题,请参考以下文章

hdu 1019 Least Common Multiple

HDU 1019 Least Common Multiple

Hdu 1019 Least Common Multiple

hdu 1019 Least Common Multiple

HDU 1019 Least Common Multiple

HDU1019 Least Common Multiple(多个数的最小公倍数)