본문 바로가기
Algorithm

백준 1934번 최소공배수

by 2nyong 2023. 3. 11.

주어진 두 숫자의 최소공배수를 구하는 문제다.

 

이 문제는 두 숫자의 최대공약수를 구하는 대표적인 알고리즘인 유클리드 호제법을 활용해 풀이하였다.

 

※ 최소공배수를 구하는 문제이며, 최소공배수는 [숫자1 x 숫자2 / 최대공약수] 로 계산할 수 있다.

 

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);

        int T = in.nextInt();

        for (int i = 0; i < T; i++) {
            int A = in.nextInt();
            int B = in.nextInt();

            int gcd = calcGcd(B, A); // 최대공약수
            int lcm = A * B / gcd; // 최소공배수
            System.out.println(lcm);
        }
    }

    public static int calcGcd(int big, int small) {
        if (big % small == 0) {
            return small;
        }
        return calcGcd(small, big % small);
    }
}

'Algorithm' 카테고리의 다른 글

백준 2798번 블랙잭  (0) 2023.03.13
백준 1436번 영화감독 숌  (0) 2023.03.11
백준 11399번 ATM  (0) 2023.03.11
백준 1541번 잃어버린 괄호  (0) 2023.03.10
백준 11050번 이항계수 1  (0) 2023.03.10

댓글