[프로그래머스, Java] 최대공약수와 최소공배수

2025. 7. 10. 20:53·CodingTest/Programmers

사진을 클릭하면 해당 문제로 이동

💡풀이

class Solution {
    public int[] solution(int n, int m) {

        // 유클리드 호제법을 사용하여 최대공약수와 최소공배수를 구하는 방법
        int a = Math.max(n, m);
        int b = Math.min(n, m);

        while (b > 0) {
            int temp = a % b;
            a = b;
            b = temp;
        }

        int gcd = a; // 최대공약수 greatest common divisor
        int lcm = n * m / gcd; // 최소공배수 least common multiple

        return new int[]{gcd, lcm};
    }
}

📖새로 배운 부분

 

유클리드 호제법이란?

최대공약수 GCD(Greatest Common Divisor)두 자연수가 공통으로 갖는 약수들 중에서 가장 큰 값ex) 24와 18의 최대공약수는 6 최소공배수 LCM(Least Common Multiple)두 자연수들의 배수들 중에서 공통된 가장 작

devoks.tistory.com


 

GitHub - okjunghyeon/Programmers_CodingTest: 프로그래머스 관련 코딩테스트 문제를 풀이한 저장소입니다.

프로그래머스 관련 코딩테스트 문제를 풀이한 저장소입니다. Contribute to okjunghyeon/Programmers_CodingTest development by creating an account on GitHub.

github.com

 

'CodingTest > Programmers' 카테고리의 다른 글

[프로그래머스, Java] 예산  (1) 2025.07.10
[프로그래머스, Java] 크기가 작은 부분문자열  (0) 2025.07.10
[Java] 유클리드 호제법이란?  (0) 2025.07.10
[프로그래머스, Java] 같은 숫자는 싫어  (0) 2025.07.10
[프로그래머스, Java] 직사각형 별찍기  (0) 2025.07.10
'CodingTest/Programmers' 카테고리의 다른 글
  • [프로그래머스, Java] 예산
  • [프로그래머스, Java] 크기가 작은 부분문자열
  • [Java] 유클리드 호제법이란?
  • [프로그래머스, Java] 같은 숫자는 싫어
devoks
devoks
꾸준히 작성해보자!
  • devoks
    ok's 개발 블로그
    devoks
  • 전체
    오늘
    어제
    • 분류 전체보기 (112) N
      • Backend (15)
        • SpringBoot (0)
        • Java (15)
      • Cs (18) N
      • Infra (0)
        • AWS (0)
        • Docker (0)
      • CodingTest (79)
        • Programmers (79)
  • 링크

    • My GitHub
  • 인기 글

  • 태그

    json
    java
    codingtest
    switch
    BufferedReader
    programmers
    effectivejava
    CS
    BufferedWriter
    StringTokenizer
  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
devoks
[프로그래머스, Java] 최대공약수와 최소공배수
상단으로

티스토리툴바