치춘짱베리굿나이스
[백준] 11653 본문
소인수분해
문제
정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.
입력
첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.
출력
N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다.
풀이
const prime = () => {
let input = parseInt(
require("fs").readFileSync("/dev/stdin").toString().trim()
);
let prime = 2;
let ans = [];
while (prime <= input) {
if (!(input % prime)) {
ans.push(prime);
input /= prime;
} else prime++;
}
console.log(ans.join("\n"));
};
prime();
반성회
input
을 prime
으로 안 나눠질 때까지 나눴으므로 prime
의 배수들은 !(input % prime)
조건을 만족하지 않는다
'Javascript + Typescript > 자바스크립트로 알고리즘풀기' 카테고리의 다른 글
[백준] 17608 (0) | 2022.02.13 |
---|---|
[백준] 4948 (0) | 2022.02.13 |
[백준] 3009 (0) | 2022.02.13 |
[백준] 2581 (0) | 2022.02.13 |
[백준] 1929 (0) | 2022.02.11 |
Comments