Algorithm
- 1๋ก ๋ง๋ค๊ธฐ -
๋ฌธ์
์ ์ X์ ์ฌ์ฉํ ์ ์๋ ์ฐ์ฐ์ ๋ค์๊ณผ ๊ฐ์ด ์ธ ๊ฐ์ง ์ด๋ค.
1. X๊ฐ 3์ผ๋ก ๋๋์ด ๋จ์ด์ง๋ฉด, 3์ผ๋ก ๋๋๋ค.
2. X๊ฐ 2๋ก ๋๋์ด ๋จ์ด์ง๋ฉด, 2๋ก ๋๋๋ค.
3. 1์ ๋บ๋ค.
์ ์ N์ด ์ฃผ์ด์ก์ ๋, ์์ ๊ฐ์ ์ฐ์ฐ ์ธ ๊ฐ๋ฅผ ์ ์ ํ ์ฌ์ฉํด์ 1์ ๋ง๋ค๋ ค๊ณ ํ๋ค. ์ฐ์ฐ์ ์ฌ์ฉํ๋ ํ์์ ์ต์๊ฐ์ ์ถ๋ ฅํ์์ค.
์ ์ถ๋ ฅ ์์
๋ฌธ์ ํ๊ธฐ
let fs = require("fs");
let input = fs.readFileSync("/dev/stdin").toString().trim();
input = Number(input);
let arr = [0, 0, 1, 1]; // ํธ์๋ฅผ ์ํด 0๋ฒ์งธ๋ pass
for (let i = 4; i <= input; i++) {
arr[i] = arr[i - 1] + 1;
if (i % 3 === 0 && arr[i / 3] + 1 < arr[i]) {
arr[i] = arr[i / 3] + 1;
} else if (i % 2 === 0 && arr[i / 2] + 1 < arr[i]) {
arr[i] = arr[i / 2] + 1;
}
}
console.log(arr[input]);
๋ฐ์ํ
'๊ฐ์ธ๊ณต๋ถ > Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค][Node.js] 1476๋ฒ : ๋ ์ง ๊ณ์ฐ (0) | 2021.07.04 |
---|---|
[๋ฐฑ์ค][Node.js] 1475๋ฒ : ๋ฐฉ ๋ฒํธ (0) | 2021.07.03 |
[๋ฐฑ์ค][Node.js] 1431๋ฒ : ์๋ฆฌ์ผ ๋ฒํธ (0) | 2021.07.01 |
[๋ฐฑ์ค][Node.js] 1427๋ฒ : ์ํธ์ธ์ฌ์ด๋ (0) | 2021.06.30 |
[๋ฐฑ์ค][Node.js] 1085๋ฒ : ์ง์ฌ๊ฐํ์์ ํ์ถ (0) | 2021.06.29 |
๋๊ธ