
import Foundation
func solution(_ a:Int, _ b:Int) -> Int {
if Int(String(a) + String(b))! >= Int(String(b) + String(a))! {
return Int(String(a) + String(b))!
}
else {
return Int(String(b) + String(a))!
}
}

import Foundation
func solution(_ a:Int, _ b:Int) -> Int {
return Int("\(a)\(b)")! >= Int("\(b)\(a)")! ? Int("\(a)\(b)")! : Int("\(b)\(a)")!
}
💁🏻♂️ 요약
- max 연산자를 사용하면 시간초과가 뜨고, if else 문으로 분기하여 비교하는 것이 더 빠르다.
- max 연산자보다는 삼항 연산자가 더 빠른듯하다. max 연산자를 사용했을 떄는 시간 초과가 떴다.
- String( ) 타입 변환 연산자보다 스트링 인터폴레이션 "()"가 더 빠르다.
- Int( )는 return 타입이 Optional()이지만, String( )은 그냥 String이다.
왜냐하면 String을 Int로 변환시 정수로 변환이 가능/불가능 두가지여서 return 타입이 Optional Int이지만,
Int를 String으로 변환시 무조건 스트링형으로 변환이 가능하기 때문에 return 타입은 그냥 String이다.