N개의 최소공배수

LJM·2023년 4월 8일
0

programmers

목록 보기
20/92

https://school.programmers.co.kr/learn/courses/30/lessons/12953

가장큰 숫자에 2 곱해주고
다른 숫자들로 나누어지는지 확인

안나눠지면 3을 곱해주고
체크

이런 방식으로 해결하였다. 의외로(?) 바로 풀렸다

import java.util.*;

class Solution {
    public int solution(int[] arr) {
        int answer = 0;
        
        Arrays.sort(arr);
        
        int max = arr[arr.length-1];
        int nMax = max;
        
        int next = 2;
        while(true)
        {
            boolean success = true;
            
            for(int i : arr)
            {
                if(nMax % i != 0)
                {
                    success = false;
                    break;
                }
            }
            if(success == false)
                nMax = max * next++;
            else
                break;
            
            //System.out.println(nMax);
        }
        
        answer = nMax;
        
        return answer;
    }
}
profile
게임개발자 백엔드개발자

0개의 댓글