# [Algorithm/JS] 백준 11653번 소인수분해
# Question
정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.
# Input
정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.
# Output
N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다.
# Example
# Input 1
72
1
# Output 1
2
2
2
3
3
1
2
3
4
5
2
3
4
5
# Input 2
3
1
# Output 2
3
1
# Input 3
6
1
# Output 3
2
3
1
2
2
이 외의 입출력은 상단의 문제 바로가기 링크에서 확인
# Solution
const input = require('fs').readFileSync('dev/stdin').toString().trim();
let num = Number(input);
let divider = 2;
let prime = [];
while (divider <= input) {
if (num % divider === 0) {
num /= divider;
prime.push(divider);
} else {
divider++;
}
}
console.log(prime);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
← 2581번 소수 1929번 소수 구하기 →