HDOJ 1019 Least Common Multiple
2016-03-15 18:10
363 查看
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
Sample Output
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最小公倍数计算时(a*b)/gcd(a,b)可能会因为a*b太大而溢出,所以要先除后乘!!!!即(a/gcd(a,b))*b!!!!!!!// // main.cpp // Least Common Multiple // // Created by 张嘉韬 on 16/3/15. // Copyright © 2016年 张嘉韬. All rights reserved. // #include <iostream> #include <cstring> using namespace std; int gcd(int a,int b) { if(b==0) return a; else return gcd(b,a%b); } int lcm(int a,int b) { return a/gcd(a,b)*b; } int main(int argc, const char * argv[]) { //freopen("/Users/zhangjiatao/Desktop/input.txt","r",stdin); int m; cin>>m; for(int t=1;t<=m;t++) { int n,temp1,temp2; cin>>n; temp1=1; for(int i=1;i<=n;i++) { cin>>temp2; temp1=lcm(temp1,temp2); } cout<<temp1<<endl; } return 0; }
相关文章推荐
- Echarts源码总括
- MYSQL不能从远程连接的解决方法
- 提升自己深入思考的能力
- MATLAB R2012a与vs2010混合编程 error LNK2019
- mysql Column 'dbvalue' in where clause is ambiguous解决方案
- Extjs 打包 failed to find any files
- Jsoup 文档
- ORACLE ADF:EO 自定义系统验证的错误信息
- mysql linux下使用yum安装mysql
- 跨平台实现删除文件夹中所有文件、移动文件的功能
- 【2】-内核驱动模块的学习
- 深入学习微框架:Spring Boot
- 单元测试介绍
- c/c++内存机制(一)(转)
- Android Handler处理机制 ( 三 ) ——Handler,Message,Looper,MessageQueue
- mysql数据库+java实现事务控制工作笔记
- 跨程序共享数据,探究内容提供器
- MySQL提示:The server quit without updating PID file问题的解决办法
- IOS学习之在NSURLRequest中设置cookies
- ASM AMDU工具的使用