[프로그래머스][Java] Lv.2 N개의 최소공배수

2023. 6. 14. 15:15·Algorithms(CT)


풀이과정

  • 최소공배수 구하기
    a * b = (a,b의 최소공배수) * (a,b의 최대공약수) 공식을 활용해 구합니다.

  • 최대공약수 구하기
    유클리드 호제법을 이용해 a%b가 0이 될 때까지 재귀함수를 호출하고 나눠떨어질 때의 b값이 최대공약수가 됩니다.

위의 최소공배수와 최대공약수를 구하는 방법을 활용해 다음과 같은 순서로 풀어내었습니다.

 

  1.  arr배열에 들어있는 0번 수와 1번 수의 최소공배수를 구합니다.
  2. 1에서 구한 최소공배수와 다음 숫자인 arr[2]의 최소공배수를 구합니다.
  3. ....arr[arr.length-1]까지의 최소공배수를 구해 해당 값을 return 합니다.

전체 코드

class Solution {
    public int solution(int[] arr) {
        int answer = arr[0];
        
        for(int i=0;i<arr.length;i++){
            answer=lcm(answer,arr[i]);
        }
        
        return answer;
    }
    //최소공배수 Least Common Multiple
    int lcm(int a, int b){
        return a*b /gcd(a,b);
    }
    //최대공약수 Greatest Common Divisor
    int gcd(int a, int b){
        //유클리드 호제법
        if(a%b==0)
            return b;
        
        return gcd(b,a%b);
    }
}

'Algorithms(CT)' 카테고리의 다른 글

[프로그래머스][Java] Lv2 귤 고르기  (0) 2023.06.15
[프로그래머스][Java] Lv.2 멀리 뛰기  (0) 2023.06.14
[프로그래머스][Java] Lv.3 아이템 줍기  (0) 2023.06.14
[프로그래머스][Java] Lv.2 점프와 순간이동  (0) 2023.06.13
[프로그래머스][Java] Lv.2 예상 대진표  (0) 2023.06.12
'Algorithms(CT)' 카테고리의 다른 글
  • [프로그래머스][Java] Lv2 귤 고르기
  • [프로그래머스][Java] Lv.2 멀리 뛰기
  • [프로그래머스][Java] Lv.3 아이템 줍기
  • [프로그래머스][Java] Lv.2 점프와 순간이동
gwee_99
gwee_99
bE bETTER!
  • gwee_99
    얼렁이와 뚱땅이
    gwee_99
  • 전체
    오늘
    어제
    • ====Category====
      • Algorithms(CT)
        • Programmers
        • Baekjoon
        • Goorm
      • Web
        • Error 해결
      • BackEnd
        • Spring
        • JPA
      • FrontEnd
        • HTML.CSS
        • JavaScript
      • Language
        • Java
      • Cloud
      • CSTS
      • Books
        • IT 5분 잡학사전
      • 일상
  • 블로그 메뉴

    • 홈
    • 방명록
    • 글쓰기
    • 관리
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    BOJ
    노마드코더
    lv.4
    자바
    DP
    스택
    개발자북클럽
    제대로 파는 자바스크립트
    그리디
    IT 5분 잡학사전
    코딩테스트
    구름톤 챌린지
    LV.2
    Lv.1
    java
    존안님
    Til
    DFS
    lv2
    인프런
    프로그래머스
    BFS
    따라하며 배우는 html css
    Greedy
    구름
    호텔 대실
    IT 잡학사전
    HTML
    백준
    LV.3
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
gwee_99
[프로그래머스][Java] Lv.2 N개의 최소공배수
상단으로

티스토리툴바