[프로그래머스] 약수 구하기

butterbeetle·2023년 1월 25일
0

코딩테스트

목록 보기
13/132
post-thumbnail

문제설명

정수 n이 매개변수로 주어질 때, n의 약수를 오름차순으로 담은 배열을 return하도록 solution 함수를 완성해주세요.

제한사항

  • 1 ≤ n ≤ 10,000

입출력 예

nresult
24[1, 2, 3, 4, 6, 8, 12, 24]
29[1, 29]

내 풀이

function solution(n) {
    let arr = [];
    
    for(let i = 1; i <= Math.sqrt(n) ; i++){
        if((n%i) === 0){
            arr.push(i, n/i)
        } 
    }
    const set = new Set(arr)
    const answer = Array.from(set).sort((a,b)=>a-b)
    return answer;
}

약수 알고리즘 한번 찾아보고 한건데 제곱근으로 하는건 처음 알았다.

profile
멍청이

0개의 댓글