728x90
๋ฐ์ํ
Problem
Solution
1. 3์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ answer๋ฐฐ์ด์ ๋ฃ๋๋ค.
3์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ answer ๋ฐฐ์ด์ ๋ฃ๋, ๋๋จธ์ง๊ฐ 0์ด๋ผ๋ฉด 3๋ฒ์งธ ๊ฐ์ด๋ฏ๋ก 4๋ก ๋์ฒดํด์ ๋ฃ์ด์ค๋ค.
2. ์ซ์๊ฐ 0์ด ๋ ๋๊น์ง 3์ผ๋ก ๋๋๋ค.
3์ผ๋ก ๋๋ ๊ฐ๋ฉด์ ํ์ฌ ์ซ์๋ฅผ ๋ณ๊ฒฝํ๋๋ฐ, ์ซ์๊ฐ 1,2,4 ์ด๋ ๊ฒ 3๊ฐ๊น์ง ํ์ฉ๋๊ธฐ ๋๋ฌธ์
0์ผ๋ก ๋๋ ์ง ๊ฒ์ 3๋ฒ์งธ๋ผ๋ ์๋ฏธ์ฌ์ ๋ค์ ์ซ์๋ก ๋์ด๊ฐ๋ฉด ์๋๋ฏ๋ก ๋ชซ์ -1์ ํด์ค๋ค.
๊ทธ๊ฒ ์๋๋ผ๋ฉด 3์ผ๋ก ๋๋ ์ค ๊ฐ์ผ๋ก ๋ณ๊ฒฝํ๋ค.
3. ๋ฐฐ์ด์ ์๋ ์ซ์๋ฅผ ๋ค์ง๊ณ ๋ฌธ์์ด๋ก ๋ณ๊ฒฝํด ๋ฐํํ๋ค.
๋ฐฐ์ด์ ์์ธ ์ซ์๋ ๊ฑฐ๊พธ๋ก ์ ์ฅ๋์ด ์๋ ๊ฒ์ด๋ฏ๋ก revese() ๋ฉ์๋๋ฅผ ์ด์ฉํด ๋ค์ง์ด ์ฃผ๊ณ ,
์ ๋ต์ ๋ฌธ์์ด๋ก ๋ฐํํด์ผ ํ๊ธฐ ๋๋ฌธ์ join('') ๋ฉ์๋๋ฅผ ์ด์ฉํด ํฉ์ณ์ค๋ค.
Source Code
function solution(n) {
const nums = [4,1,2]
let answer = []
let current = n
while (current > 0) {
answer.push(nums[current%3])
current = current%3 == 0 ? Math.floor(current/3-1) : Math.floor(current/3)
}
return answer.reverse().join('')
}
728x90
๋ฐ์ํ
'๐ Problem Solution > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Swift] ํ๋ก๊ทธ๋๋จธ์ค ์ฌ๋ฐ๋ฅธ ๊ดํธ์ ๊ฐฏ์ (0) | 2022.03.06 |
---|---|
[Swift] 2019 KAKAO WINTER INTERNSHIP ํธํ ๋ฐฉ ๋ฐฐ์ (0) | 2022.02.20 |
[JS] ํ๋ก๊ทธ๋๋จธ์ค ํฐ์ผ๋ชฌ (0) | 2022.02.06 |
[Swift] 2022 KAKAO BLIND RECRUITMENT ์ฌ๋ผ์ง๋ ๋ฐํ (0) | 2022.01.20 |
[Swift] 2022 KAKAO BLIND RECRUITMENT ํ๊ดด๋์ง ์์ ๊ฑด๋ฌผ (0) | 2022.01.20 |
๋๊ธ