Algorithm/Programmers
[Algorithm/Programmers] 가장 큰 수
thoonk:
2020. 12. 18. 20:34
반응형
문제 풀이:
1. String으로 숫자를 합치고 Int로 변환하여 정렬한다.
2. 수가 모두 0일 때는 0으로 출력한다.
3. 정렬된 배열을 String으로 합쳐서 출력한다.
코드:
import Foundation
var numbers = [6, 10, 2]
//var numbers = [3, 30, 34, 5, 9]
func solution(_ numbers:[Int]) -> String {
let sortedNums = numbers.sorted() { Int("\($0)\($1)")! > Int("\($1)\($0)")!}
if sortedNums[0] == 0 {
return "0"
}
return sortedNums.reduce("") {$0 + String($1)}
}
print(solution(numbers))
문제:
programmers.co.kr/learn/courses/30/lessons/42746
코딩테스트 연습 - 가장 큰 수
0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰
programmers.co.kr
반응형