Algorithm/프로그래머스
[프로그래머스 스위프트] 폰켓몬
devKen
2022. 7. 27. 22:33
문제 요약
사실 이 문제는 스위프트를 지원하지 않습니만 그냥 파이썬으로 풀어봤고 스위프트 버전으로 풀어보려고 합니다.
중복이 허용되는 배열이 있고, 배열은 총 갯수가 항상 짝수입니다. 여기서 사용자는 배열의 반만큼만 선택하여 가질 수 있는 상황에서 최대한 다양한 숫자를 가지려고 합니다.
해답
import Foundation
func solution(nums: [Int]) -> Int {
if Set(nums).count > nums.count / 2 {
return nums.count/2
} else {
return Set(nums).count
}
}
한줄로 풀려면
func solution(nums: [Int]) -> Int {
return [Set(nums).count, nums.count / 2].min()!
}
아마 이러면 풀리지 않을까 싶다.