[ํ๋ก๊ทธ๋๋จธ์ค] ์์ธ์๋ถํด (JavaScript ๋ฌธ์ ํ์ด)CS/Solutions2023. 12. 15. 11:27
Table of Contents
๋ฐ์ํ
๐ ๋ฌธ์ ์ค๋ช
์์ธ์๋ถํด๋ ์ด๋ค ์๋ฅผ ์์๋ค์ ๊ณฑ์ผ๋ก ํํํ๋ ๊ฒ์
๋๋ค. ์๋ฅผ ๋ค์ด 12๋ฅผ ์์ธ์ ๋ถํดํ๋ฉด 2 * 2 * 3 ์ผ๋ก ๋ํ๋ผ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ 12์ ์์ธ์๋ 2์ 3์
๋๋ค. ์์ฐ์ n
์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋ n
์ ์์ธ์๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ๋ด์ ๋ฐฐ์ด์ returnํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
๐ ์ ํ์ฌํญ
- 2 ≤ n ≤ 10,000
๐ฅ ์ ์ถ๋ ฅ ์
n | result |
12 | [2, 3] |
17 | [17] |
420 | [2, 3, 5, 7] |
๐ป ๋์ ํ์ด
- 2๋ถํฐ ์์ํ์ฌ
n
์ ์ ๊ณฑ๊ทผ๊น์ง์ ๋ชจ๋ ์๋ก ๋๋์ด ๋ณด๋ฉฐ ์์ธ์๋ฅผ ์ฐพ์ต๋๋ค. - ์์ธ์๋ฅผ ์ฐพ์ ๋๋ง๋ค
n
์ ๊ทธ ์์ธ์๋ก ๋๋๋๋ค. n
์ด 1์ด ๋ ๋๊น์ง ๋ฐ๋ณตํฉ๋๋ค.- ์ต์ข
์ ์ผ๋ก ๋จ์
n
์ด 1๋ณด๋ค ํฌ๋ฉด ์ด๋n
์์ฒด๊ฐ ์์์์ ์๋ฏธํ๋ฏ๋ก ์์ธ์ ๋ชฉ๋ก์ ์ถ๊ฐํฉ๋๋ค.
function solution(n) {
const factors = [];
for (let i = 2; i * i <= n; i++) {
while (n % i === 0) {
factors.push(i);
n /= i;
}
}
if (n > 1) factors.push(n);
return [...new Set(factors)].sort((a, b) => a - b);
}
๋ฐ์ํ
'CS > Solutions' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
@์ค๋น :: console.log("Hello, World!");
ํฌ์คํ ์ด ์ข์๋ค๋ฉด "์ข์์โค๏ธ" ๋๋ "๊ตฌ๋ ๐๐ป" ํด์ฃผ์ธ์!