Study & Project ✏️/알고리즘 📋

백준[JAVA] 2609.최대공약수와 최소공배수 - 자바

JM 2022. 10. 13. 00:01
반응형

📖 문제

📃 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        StringTokenizer st = new StringTokenizer(br.readLine());

        int a = Integer.parseInt(st.nextToken());
        int b = Integer.parseInt(st.nextToken());

        int d = gcb(a, b);

        System.out.println(d);
        System.out.println((a * b) / d);
    }

    // Greatest Common Divisor
    private static int gcb(int a, int b) {
        if (b == 0)
            return a;

        // GCD(a,b) = GCD(b,r) thus (r = a % b)
        return gcb(b, a % b);
    }
}

 

🔗 링크

https://www.acmicpc.net/problem/2609

 

2609번: 최대공약수와 최소공배수

첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.

www.acmicpc.net