ACM_最小公倍数
Lowest Common Multiple Plus
Time Limit: 2000/1000ms (Java/Others)
Problem Description:
求n个数的最小公倍数。
Input:
输入包含多个测试实例,每个测试实例的开始是一个正整数n(2<=n<=100),然后是n个正整数(数字均大于0)。
Output:
为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行。你可以假设最后的输出是一个64位的整数。
Sample Input:
2 3 4
3 23 45 2
Sample Output:
12
2070
解题思路:求n个数的最小公倍数,(其中n>=2),先求出这两个数的最大公约数,再利用这两个数的乘积等于这两个数的最小公倍数和最大公约数的乘积即可求出n个数的最小公倍数。
设两个数是a,b最大公约数是p,最小公倍数是q,则ab=pq,即q=ab/p(q=a/p*b或q=b/p*a)。本题就是根据这样的关系来求最小公倍数的。
AC代码:
#include<iostream>
using namespace std;
typedef long long LL ;
LL gcd(LL a,LL b) //求两个数的最大公约数
{
return b ? gcd(b,a%b):a;
}
LL lcm(LL m,LL g) //求两个数的最小公倍数
{
return m/gcd(m,g)*g;
}
int main()
{
int n;
LL lowest,q;
while(cin>>n){
cin>>q>>lowest;
lowest=lcm(q,lowest);
n-=;
while(n--){
cin>>q;
lowest=lcm(q,lowest);
}
cout<<lowest<<endl;
}
return ;
}
ACM_最小公倍数的更多相关文章
- 求N个数的最大公约数和最小公倍数(转)
除了分解质因数,还有另一种适用于求几个较小数的最大公约数.最小公倍数的方法 下面是数学证明及算法实现 令[a1,a2,..,an] 表示a1,a2,..,an的最小公倍数,(a1,a2,..,an)表 ...
- C语言 · 最小公倍数
问题描述 编写一函数lcm,求两个正整数的最小公倍数. 样例输入 一个满足题目要求的输入范例.例:3 5 样例输出 与上面的样例输入对应的输出.例: 数据规模和约定 输入数据中每一个数的范围. 例:两 ...
- Java程序设计之最大公约数和最小公倍数
题目:输入两个正整数number1和number2,求其最大公约数和最小公倍数. 算法:较大数和较小数取余,较小数除余数,一直到余数为0时,为最大公约数(辗转相除法):最大公倍数numbe1*numb ...
- 最大公约数和最小公倍数--java实现
代码: //最大公约数 public int gcd(int p,int q){ if(q == 0) return p; return gcd(q, p % q); } //最小公倍数 public ...
- python 最小公倍数
最小公倍数 求解两个整数(不能是负数)的最小公倍数 方法一:穷举法 def LCM(m, n): if m*n == 0: return 0 if m > n: lcm = m else: lc ...
- 输入两个正整数m和n,求其最大公约数和最小公倍数
public static void main(String[] args){ Scanner sc = new Scanner (System.in); int a,b; System.out ...
- Java编写最大公约数和最小公倍数
package javaapplication24; class NegativeIntegerException extends Exception{ String message; public ...
- poj 3101Astronomy(圆周追击+分数最小公倍数)
/* 本题属于圆周追击问题: 假设已知两个圆周运动的物体的周期分别是a ,b, 设每隔时间t就会在同一条直线上 在同一条直线上的条件是 角度之差为 PI ! 那么就有方程 (2PI/a - 2PI/b ...
- 【codevs1012】最大公约数和最小公倍数
题目描述 Description 输入二个正整数x0,y0(2<=x0<100000,2<=y0<=1000000),求出满足下列条件的P,Q的个数 条件: 1.P,Q是正整 ...
随机推荐
- Oracle冷备和热备脚本
Oracle冷备和热备脚本 冷备脚本: set feedback off set heading off set verify off set trimspool off set echo off ...
- centos 7 samba 回收站
vim /etc/samba/smb.conf其中添加 #==================================vfs object = recyclerecycle:repositor ...
- hibernate查询之Criteria实现分页方法(GROOVY语法)
public int searchTest(String name, Integer pageIndex, List<Test> resultList){ def criteria = T ...
- Sql Server 导入还有一个数据库中的表数据
在涉及到SQL Server编程或是管理时一定会用到数据的导入与导出, 导入导出的方法有多种,此处以SQL Server导入表数据为例.阐述一下: 1.打开SQL Server Management ...
- 浅谈 ZipArchive 类
Microsoft .NET Framework 4.5 新增了 ZipArchive 类 Microsoft Windows 8 Consumer Preview 操作系统已经内置了 Microso ...
- 使用7zip压解各种文件的经常使用命令
7zip简单介绍 格式支持 压缩解压缩 仅支持解压缩 安装 Debian Ubuntu ArchLinux 使用 打包 解压 列出文件的信息列表 检查包的完整性 更新压缩包 删除包里的文件 7zip简 ...
- Java-ReentrantReadWriteLock的简单样例
内容:读锁时共享的.写锁时相互排斥的(可见执行结果).都是通过AQS实现的. public class ReentrantReadWriteLockTest { static class MyObje ...
- 开发Nodejs(rest框架)版本的百度新闻系统--开发环境配置
项目介绍:配置好开发环境,制作前端百度新闻界面,后台开发成Nodejs版本,做成做成rest风格API形式搭载mysql,使用Bootstrap搭建后台页面,完成对新闻的增删改查功能,利用Ajax配合 ...
- 51NOD 1821 最优集合 栈
1821 最优集合 一个集合S的优美值定义为:最大的x,满足对于任意i∈[1,x],都存在一个S的子集S',使得S'中元素之和为i. 给定n个集合,对于每一次询问,指定一个集合S1和一个集合S2, ...
- 设计模式-(9)中介者模式(swift)
在对象去耦合的模式中,有两种模式:中介者模式,观察者模式 一,概念 用一个中介对象来封装一系列的对象交互.中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互. 这个 ...