ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€

[ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€][Lv.1] 3진법 λ’€μ§‘κΈ° - μžλ°”μŠ€ν¬λ¦½νŠΈ <μ›”κ°„ μ½”λ“œ μ±Œλ¦°μ§€>

ruby_s 2021. 12. 26. 23:12
728x90
λ°˜μ‘ν˜•
SMALL

문제 μ„€λͺ…

μžμ—°μˆ˜ n이 λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§‘λ‹ˆλ‹€. n을 3진법 μƒμ—μ„œ μ•žλ’€λ‘œ 뒀집은 ν›„, 이λ₯Ό λ‹€μ‹œ 10μ§„λ²•μœΌλ‘œ ν‘œν˜„ν•œ 수λ₯Ό return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄μ£Όμ„Έμš”.


μ œν•œμ‚¬ν•­

  • n은 1 이상 100,000,000 μ΄ν•˜μΈ μžμ—°μˆ˜μž…λ‹ˆλ‹€.

 

μž…μΆœλ ₯ 예

n result
45 7
125 229

μž…μΆœλ ₯ 예 μ„€λͺ…

μž…μΆœλ ₯ 예 #1

  • 닡을 λ„μΆœν•˜λŠ” 과정은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
n (10진법) n (3진법) μ•žλ’€ λ°˜μ „(3진법) 10μ§„λ²•μœΌλ‘œ ν‘œν˜„
45 1200 0021 7
  • λ”°λΌμ„œ 7을 return ν•΄μ•Ό ν•©λ‹ˆλ‹€.

μž…μΆœλ ₯ 예 #2

  • 닡을 λ„μΆœν•˜λŠ” 과정은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
n (10진법) n (3진법) μ•žλ’€ λ°˜μ „(3진법) 10μ§„λ²•μœΌλ‘œ ν‘œν˜„
125 11122 22111 229
  • λ”°λΌμ„œ 229λ₯Ό return ν•΄μ•Ό ν•©λ‹ˆλ‹€.

 

λ‚΄κ°€ ν‘Ό 풀이

function solution(n) {
    return parseInt(n.toString(3).split('').reverse().join(''), 3);
}

: 10μ§„λ²•μœΌλ‘œ λ³€ν™˜ν• λ•Œλ„ toString에 10λ„£μœΌλ©΄ λ˜λŠ”μ€„ μ•Œμ•˜λŠ”λ°, parseIntλ₯Ό μ¨μ•Όν•˜λŠ” κ±°μ˜€λ‹€ γ…Ž

728x90
λ°˜μ‘ν˜•
LIST