Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- joined()
- 라이징캠프
- String()
- 클론코딩
- 프로그래머스
- variadic parameters
- Segue
- zip()
- 싱글톤
- alamofire
- 코딩테스트
- prefix()
- IOS
- Autolayout
- github
- 알고리즘
- reduce()
- replacesubrange()
- API
- uikit
- BackgroundModes
- MVC
- xocde
- 코드업 파이썬 기초 100제
- suffix()
- components()
- swift
- 대문자소문자
- tableView
- GIT
Archives
- Today
- Total
Daeng iOS
[프로그래머스 코테 기초 Swift] #3-4 더 크게 합치기 본문
프로그래머스 코딩 기초 트레이닝의 Day3은 "연산"에 관한 문제다
🗒️ 문제

✏️ 내 풀이
func solution(_ a:Int, _ b:Int) -> Int {
let result1: String = [a, b].map({String($0)}).joined()
let result2: String = [b, a].map({String($0)}).joined()
let result3: Int = [result1, result2].map({Int($0)!}).max()!
return result3
}
a, b 순서로 map()과 joined()를 활용해서 붙이고 그 반대로도 붙인다
지금은 그 결과값들이 String 이기 때문에 map() 을 활용해 Int로 일괄 변환하고
max()로 둘 중 큰 값을 구해서 반환한다
🔍 다른 풀이
1)
func solution(_ a:Int, _ b:Int) -> Int {
return max(Int(String(a) + String(b))!, Int(String(b) + String(a))!)
}
2)
func solution(_ a:Int, _ b:Int) -> Int {
let c = Int("\(a)\(b)")!, d = Int("\(b)\(a)")!
return c > d ? c : d
}
1) max의 파라미터로 a,b를 합친 것과 b,a 순서로 합친 것을 넣어줘서 더 큰 것을 반환하도록 한다
2) 문자열을들 보간법으로 합치고 Int로 변환해준 후 삼항연산자로 비교해주는 방법도 있다
'알고리즘 & 코딩테스트 > 프로프래머스' 카테고리의 다른 글
| [프로그래머스 코테 기초 Swift] #4-1 n의 배수 (0) | 2024.05.22 |
|---|---|
| [프로그래머스 코테 기초 Swift] #3-5 두 수의 연산값 비교하기 (0) | 2024.05.22 |
| [프로그래머스 코테 기초 Swift] #3-3 문자열 곱하기 (0) | 2024.03.13 |
| [프로그래머스 코테 기초 Swift] #3-2 문자 리스트를 문자열로 변환하기 (0) | 2024.03.13 |
| [프로그래머스 코테 기초 Swift] #3-1 문자열 섞기 (0) | 2024.03.11 |