728x90
프로그래머스 숫자 짝꿍
문자열 X와 Y에 모두 들어있는 숫자를 모아 가장 큰 수를 반환하는 문제
9부터 0까지 X와 Y에 포함된 수의 개수를 찾아 문자열을 반환하고, 만약 “00”이 된다면 0을 반환하도록 구현
func solution(_ X:String, _ Y:String) -> String {
var answer = "9876543210".reduce("") { partialResult, number in
let x = X.filter({ $0 == number })
let y = Y.filter({ $0 == number })
if !x.isEmpty, !y.isEmpty {
return partialResult + Array(repeating: number, count: min(x.count, y.count))
}
return partialResult
}
if answer.isEmpty {
return "-1"
}
return Set(answer) == ["0"] ? "0" : answer
}
728x90
'Algorithm' 카테고리의 다른 글
SwiftUI: 로또의 최고 순위와 최저 순위 (0) | 2024.03.07 |
---|---|
SwiftUI: 문자열 나누기 (1) | 2024.03.07 |
SwiftUI: 체육복 (0) | 2024.03.07 |
SwiftUI: 가장 많이 받은 선물 (1) | 2024.02.05 |
SwiftUI: 크레인 인형뽑기 게임 (1) | 2023.12.18 |