소인수분해 결과 출력하기

문제


정수 n 입력으로 받습니다. 입력 n 소인수분해한 결과를 배열로 반환합니다. 여기서 소인수분해란 주어진 수를 소수의 곱으로 나타내는 것을 말합니다.

 

풀이


function primeFactorization(n) {
    const result = [];
    while (n > 1) {
        for (let i = 2; i <= n; i++) {
            if (n % i === 0) {
                result.push(i);
                n /= i;
                break;
            }
        }
    }
    return result;
}

n에서 나눠지는 값을 배열에 담고 계속 나눠가면서 n이 1보다 클때까지 계산을 합니다.

'코딩문제' 카테고리의 다른 글

삼각형의 종류 판별하기  (0) 2024.04.09
중복되지 않은 좌표 구하기  (0) 2024.04.08
소수 개수 세기  (0) 2024.04.07
K번째로 약수를 찾아라  (0) 2024.04.07
사다리 오르내리기  (0) 2024.04.03