[Swift] 백준 2705,11005 - 진법변환


2705 - 문제링크


11005 - 문제 링크

n진법 -> 10진법
또는
10진법 -> n진법
으로 변환하는 방법은 매우 간단하다.

n진법 -> 10진법으로 변환하는 경우

이때, n진법으로 작성된 수는 항상 문자열로 취급해야한다 (n != 10)

따라서

let nString = "ZZZZZ"
let num = 36

print(Int(nString, radix: num)!)

다음과 같이 작성하면 된다.
36진법으로 작성된 "zzzzz"를 10진법으로 바꾸어 출력하는 코드이다.
10진법으로 작성된 수는 Int이기때문에 Int로 출력해야한다.

10진법 -> n진법

10진법으로 작성된 Int를 n진법 String으로 출력해야한다.

따라서

let decimal = 60466175
let num = 36

print(String(decimal, radix: num))

이렇게하면..!!!
탈락입니다.

let decimal = 60466175
let num = 36

print(String(decimal, radix: num).uppercased())

uppercased를 꼭 빼먹지말고 해줘야합니다...

좋은 웹페이지 즐겨찾기