题解 | #求最小公倍数#

求最小公倍数

http://www.nowcoder.com/practice/22948c2cad484e0291350abad86136c3

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String[] input = new String[2];
        int m=0;
        int n=0;
        int output=1;
        while (in.hasNextInt()) {
            input=in.nextLine().split("\\s+");//获取输入的2个数字
            m = Integer.parseInt(input[0]);
            n = Integer.parseInt(input[1]);
            if(m>n){//确保m<=n
                output=m;
                m=n;
                n=output;
            }

            while (true){
                if(output%m==0&&output%n==0){
                    break;
                }
                output++;
            }

            System.out.println(output);

        }
    }
}

先上代码。本题要求最小公倍数,采用遍历的方式就比较简单。死循环的边界条件就是当某数值对2个输入的数字取模时都=0.由于输入有空格,笔者采用了正则表达式切分成字符串数组,之后存入int变量中,还比较机智地利用了output变量协助进行大小数字的交换,避免开辟临时变量额外的内存开销。

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务