๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
3๏ธโƒฃ Swift/Problem Solving

[Swift Algorithm] 3์ง„๋ฒ• ๋’ค์ง‘๊ธฐ Programmers(Lv.1)

by seolhee2750 2021. 6. 18.
๋ฌธ์ œ ์„ค๋ช…

์ž์—ฐ์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. n์„ 3์ง„๋ฒ• ์ƒ์—์„œ ์•ž๋’ค๋กœ ๋’ค์ง‘์€ ํ›„, ์ด๋ฅผ ๋‹ค์‹œ 10์ง„๋ฒ•์œผ๋กœ ํ‘œํ˜„ํ•œ ์ˆ˜๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

 

์ œํ•œ ์กฐ๊ฑด
  • n์€ 1 ์ด์ƒ 100,000,000 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.

 

์ž…์ถœ๋ ฅ ์˜ˆ
 n result
45 7
125 229

 

๋‚ด ๋ฌธ์ œ ํ’€์ด
import Foundation

func solution(_ n:Int) -> Int {
    let num = String(String(n, radix: 3).reversed())
    return Int(num, radix: 3)!
}
  • ์ด์ „์— ํ’€์—ˆ๋˜ 2์ง„๋ฒ• ๋ฌธ์ œ์—์„œ ๋ฐฐ์› ๋˜ radix๊ฐ€ ์ƒ๊ฐ๋‚ฌ๋‹ค,! ๊ทธ๋ž˜์„œ radix๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค.
  • 3์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊พธ๋Š” ๋ฒ•์€ ์•Œ์•˜๋Š”๋ฐ, ๋‹ค์‹œ 10์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊พธ๋Š” ๋ฒ•์„ ๋ชฐ๋ผ์„œ ํ—ค๋งธ๋‹ค.ใ…œ
  • 10์ง„๋ฒ•์œผ๋กœ ์ „ํ™˜ํ•  ๋•Œ๋Š” String์ด ์•„๋‹ˆ๋ผ Int๋กœ๋งŒ ๋ฐ”๊ฟ”์„œ ํ•ด์ค˜์•ผ ํ•œ๋‹ค๋Š” ์ ์„ ์•Œ์•˜๊ณ ,,! ๊ณต๋ถ€ํ•ด์„œ ํ’€์ด๋ฅผ ์™„์„ฑํ–ˆ๋‹ค.

 

๐Ÿ’ก ํ”ผ๋“œ๋ฐฑ
  • ์ง„๋ฒ• ๋ณ€ํ™˜์— ๋Œ€ํ•ด์„œ ์ž์„ธํžˆ ์ •๋ฆฌํ•ด๋ด์•ผ๊ฒ ๋‹ค.,,!!!

 


 

๐Ÿ– [ ์ถ”๊ฐ€ ] 1์ฃผ์ผ ํ›„ ๋‹ค์‹œ ํ’€์–ด๋ณด๊ธฐ

func solution2(_ n:Int) -> Int {
    return Int(String(String(n, radix: 3).reversed()), radix: 3)!
}
  • 3์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋’ค์ง‘์€ ์ˆ˜๋ฅผ ๋ฐ”๋กœ 10์ง„์ˆ˜๋กœ ๋ฐ”๊ฟ”์คŒ์œผ๋กœ์จ ํ›จ์”ฌ ๊ฐ„๊ฒฐํžˆ ์ž‘์„ฑํ–ˆ๋‹ค.

 


 

๋ฌธ์ œ

https://programmers.co.kr/learn/courses/30/lessons/68935

 

์ฐธ๊ณ 

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=yoonsea&logNo=221004904163

๋Œ“๊ธ€