728x90
오늘은 이번 단계의 마지막 문제이다.
시골에 와서 와이파이가 없다...(즉... 핫스팟을 틀고 빠르게 문제를 풀어야한다.)
문제 11653번
https://www.acmicpc.net/problem/11653
11653번: 소인수분해
첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.
www.acmicpc.net
이 문제는 2부터 시작하여 입력받은 수까지 반복문을 돌린다. 만약 입력받은 수가 1이면 소인수분해를 할 수 없기 때문에 반복문을 빠져나와준다. 그리고 입력받은 수에서 2부터 입력받은 수까지 나눠줬을 때 나머지가 0이 되는 숫자를 배열에 넣어준다. 여기서 2가 2번이 나눠진다면 그만큼을 더 while문을 통해 나눠준다. 마지막으로 foreach를 이용하여 소인수를 넣어준 배열을 순회한다. 이로써 하나씩 줄바꿈이 되어 출력이 된다.
const readFileSyncAdress = process.platform === 'linux' ? '/dev/stdin':'./input.txt'
const input = require("fs").readFileSync(readFileSyncAdress).toString().trim();
let n = Number(input);
let result = [];
for(let i=2;i<=n;i++){
if(n===1){
break;
}
while(n%i===0){
n/=i;
result.push(i);
}
}
//배열 순회
result.forEach(element => {
console.log(element);
});
[참고] https://velog.io/@gusdh2/JS%EB%B0%B1%EC%A4%80-11653%EB%B2%88-%EC%86%8C%EC%9D%B8%EC%88%98%EB%B6%84%ED%95%B4-%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8node.jsjavascript%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98%EC%BD%94%EB%94%A9%ED%85%8C%EC%8A%A4%ED%8A%B8
728x90
'백준 > JavaScript' 카테고리의 다른 글
[JS] 백준 기하 - 1085번 (0) | 2024.02.11 |
---|---|
[JS] 백준 기하 - 27323번 (0) | 2024.02.10 |
[JS] 백준 약수, 배수와 소수 - 2581번 (0) | 2024.02.08 |
[JS] 백준 약수, 배수와 소수 - 1978번 (0) | 2024.02.08 |
[JS] 백준 약수, 배수와 소수 - 9506번 (0) | 2024.02.06 |