首页 > 试题广场 >

最大公约数

[编程题]最大公约数
  • 热度指数:1016 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 128M,其他语言256M
  • 算法知识视频讲解

求出两个数的最大公约数,如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数。几个自然数公有的约数,叫做这几个自然数的公约数。公约数中最大的一个公约数,称为这几个自然数的最大公约数。


输入描述:

输入两个整数n,m, n和m的范围是



输出描述:
求出n、m的最大公约数。
示例1

输入

3 6

输出

3
示例2

输入

8 12

输出

4
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int a = in.nextInt();
            int b = in.nextInt();
            System.out.println(GCD(a, b));
        }
    }
    public static int GCD(int a, int b) {

        if (b == 0) {
            return a;
        }
        return GCD(b, a % b);

    }
}

发表于 2023-09-09 20:57:06 回复(0)

问题信息

上传者:小小
难度:
1条回答 3170浏览

热门推荐

通过挑战的用户

最大公约数