코딩테스트

[프로그래머스/자바] N개의 최소공배수_12953

라임온조 2023. 7. 26. 10:13

문제 및 코드

1. 생각

// 생각
    // 두 수의 최소공배수 구하는 걸 반복

2. 회고

  • 최소공배수 구하는 함수를 만든 후 배열에 있는 수끼리 최소공배수를 구해나가면 될 것이라고 생각함. 그래서 최소공배수 구하는 함수를 먼저 구현하고자 함.
  • 약간의 시행착오가 있었지만 반복문을 사용해서 최소공배수 구하는 함수를 만들었음. 내가 구현한 방식은 소인수분해를 이용하여 구현한 방식이고 다른 방법도 있는 것 같음.
  • 다른 방식 중 하나는 유클리드 호제법을 활용하는 것. 유클리드 호제법에 대한 설명은 알고리즘 글 참고.

 

3. 기억

  • 유클리드 호제법 재귀로 구현
public static int gcd(int num1, int num2){
    // num1 > num2 라고 가정
    if(num2 == 0){
        return num1;
    }else{
        return gcd(num2, num1%num2);
    }
}
  • 두 수의 곱을 최대공약수로 나누면 두 수의 최소공배수를 구할 수 있다

4. 체크

풀이 횟수 시간 정답 여부 참고 여부
1 50분 O