zoukankan      html  css  js  c++  java
  • HDU-ACM课堂作业 Least Common Multiple

    Least Common Multiple

    Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)
    Total Submission(s) : 178   Accepted Submission(s) : 38
    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.<br><br>
     
    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.<br>
     
    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.<br>
     
     
    Sample Input
    2 3 5 7 15 6 4 10296 936 1287 792 1
     
    Sample Output
    105 10296
     
    Source
    East Central North America 2003, Practice
     
    这里INT-32类型的变量直接用int就可以啦
     
    
    
    #include<iostream>
    #include<stdio.h>
    #include<algorithm> 
    #include<string.h>
    #include <iomanip>
    #include<math.h>
    using namespace std;
    
    int GCD(int num1, int num2)
    {
        if (num1%num2 == 0)
            return num2;
        else return  GCD(num2, num1%num2);
    }
    int LCM(int a, int b)
    {
        int temp_lcm;
        temp_lcm = a / GCD(a, b)*b; //先除后乘,否则数据溢出导致WA
        return temp_lcm;
    }
    
    int main() {
        //数据组数
        int n = 0;
        while (cin >> n) {
            while (n--) {
                //变量数
                int k = 0;
                cin >> k;
                //将变量初始化
                int b = 0;
                int lcm, a = 1;
                for (int i = 0; i < k; i++) {
                    //将每次输入的变量设置为b,计算a与b的LCM,随后将LCM赋值给a
                    cin >> b;
                    lcm = LCM(a, b);
                    a = lcm;
                }
                cout << lcm << endl;
            }
        }
    }
    
    
    
    
    
  • 相关阅读:
    (转)深入理解JavaScript 模块模式
    (转)Javascript匿名函数的写法、传参、递归
    (转)javascript匿名函数的写法、传参和递归
    (转)初探Backbone
    (转)android平台phonegap框架实现原理
    (转)PhoneGap工作原理及需改进的地方
    (转)JQM 日期插件 mobiscroll Demo
    (转)jQuery Mobile 移动开发中的日期插件Mobiscroll 2.3 使用说明
    [题解] [笔记]期望&洛谷P3232
    [笔记] [题解] 状压$DP$&洛谷P1433
  • 原文地址:https://www.cnblogs.com/DaiShuSs/p/9690464.html
Copyright © 2011-2022 走看看