ZZULIOJ-1063,最大公约与最小公倍(Java)

简介: ZZULIOJ-1063,最大公约与最小公倍(Java)

题目描述:


输入两个正整数,输出其最大公约数和最小公倍数。  


输入:


输入两个正整数n和m(n,m<=1000000)。输入保证最终结果在int范围内。


输出:


输出两个整数,用空格隔开。表示m和n的最大公约数和最小公倍数。  


样例输入:


4 6


样例输出:


2 12


提示:求最大公约数我们可以用辗转相除法去计算,而最小公倍数只需要将原来的两个数相乘,再除以它俩的最大公约数即可,但是要注意如果是先乘再除会造成数据溢出的情况,所以我们在这里采用先除后乘的方法就可以避免!!!


程序代码:


import java.util.*;
public class Main
{
  public static void main(String[] args)
  {
    Scanner input=new Scanner(System.in);
    int a=input.nextInt();
    int b=input.nextInt();
    int m=a,n=b;
    while(b!=0)
    {
      int r=a%b;
      a=b;
      b=r;
    }
    System.out.print(a+" ");
    System.out.println(+(m/a)*n);
  }
}
相关文章
|
9月前
|
Java
最小覆盖子串(Java详解)
最小覆盖子串(Java详解)
114 0
|
9月前
|
Java 索引
39. 组合总和 --力扣 --JAVA
给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制重复被选取 。如果至少一个数字的被选数量不同,则两种组合是不同的。  对于给定的输入,保证和为 target 的不同组合数少于 150 个。
52 0
|
机器学习/深度学习 Java
ZZULIOJ-1061,顺序输出各位数字(Java)
ZZULIOJ-1061,顺序输出各位数字(Java)
|
Java C++
ZZULIOJ-1100: 求组合数(函数专题)(Java)
ZZULIOJ-1100: 求组合数(函数专题)(Java)
ZZULIOJ-1103: 平均学分绩点(函数专题)(Java)
ZZULIOJ-1103: 平均学分绩点(函数专题)(Java)
ZZULIOJ-1056,幸运数字(Java)
ZZULIOJ-1056,幸运数字(Java)
|
Java C++
ZZULIOJ-1094: 统计元音(函数专题)(Java)
ZZULIOJ-1094: 统计元音(函数专题)(Java)
|
Java Serverless
ZZULIOJ-1104: 求因子和(函数专题)(Java)
ZZULIOJ-1104: 求因子和(函数专题)(Java)
|
Java Serverless C++
ZZULIOJ-1102: 火车票退票费计算(函数专题)(Java)
ZZULIOJ-1102: 火车票退票费计算(函数专题)(Java)
|
Java C++
ZZULIOJ-1096: 水仙花数(函数专题)(Java)
ZZULIOJ-1096: 水仙花数(函数专题)(Java)