์ƒˆ์†Œ์‹

๐Ÿงฎ PS

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] (Python) - 124๋‚˜๋ผ์˜ ์ˆซ์ž (Lv2)

  • -

programmers.co.kr/learn/courses/30/lessons/12899

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - 124 ๋‚˜๋ผ์˜ ์ˆซ์ž

 

programmers.co.kr

 

 ๋ถ„๋ฅ˜ : ์—ฐ์Šต๋ฌธ์ œ

 ๋‚œ์ด๋„ : Lv2

10์ง„๋ฒ•์„ 1,2,4๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚˜ํƒ€๋‚ด๋ผ.

 

  • 3์ง„๋ฒ•๊ณผ ๋น„์Šทํ•˜์ง€๋งŒ, 3์ง„๋ฒ• ๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” 0,1,2๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ํ•˜์ง€๋งŒ ๋ฌธ์ œ์—์„œ๋Š” 1, 2, 3์„ ์‚ฌ์šฉํ•˜๋˜ ํ‘œํ˜„์€ 1, 2, 4๋กœ ํ•˜๊ฒŒ๋œ๋‹ค.
  • ์ฆ‰, ๋ฌธ์ œ์—์„œ๋Š” ์ผ๋ฐ˜์ ์ธ 3์ง„๋ฒ•๊ณผ ๋‹ฌ๋ฆฌ 0์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— 15์™€ ๊ฐ™์ด 3์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆ˜๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ ํ•œ๋ฒˆ ๋” ์ƒ๊ฐํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. - (์†์œผ๋กœ 15๊นŒ์ง€ ์ ์–ด๋ณด๋ฉด ๋ญ๊ฐ€ 3์ง„๋ฒ•๊ณผ ๋‹ค๋ฅธ์ง€ ์ง๊ด€์ ์œผ๋กœ ์•Œ ์ˆ˜ ์žˆ์ง€๋งŒ ์„ค๋ช…ํ•˜๊ธฐ๊ฐ€ ํž˜๋“ค๋‹ค......)
  • ๊ธฐ๋ณธ์ ์ธ ๋กœ์ง์€ ๋ฃจํ”„๋ฌธ์„ ๋Œ๋ฉด์„œ 3์œผ๋กœ n์„ ๋‚˜๋ˆ„๊ณ , ๋‚˜๋จธ์ง€์— ๋Œ€์‘ํ•˜๋Š” ์ˆ˜๋ฅผ answer์— ํ•˜๋‚˜์”ฉ ์ถ”๊ฐ€ํ•˜๋„๋ก ๊ตฌํ˜„ํ–ˆ๋‹ค.

 

 

def solution(n): base = '124' answer = '' num = n while(True) : if (num > 3) : idx = num % 3 num //= 3 if (idx == 0 ) : num -= 1 idx = 3 answer += base[idx-1] else : answer += base[num-1] break return answer[::-1]

 

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.