[프로그래머스 LV1] 로또의 최고 순위와 최저 순위

Junyoung Park·2022년 8월 18일
0

코딩테스트

목록 보기
574/631
post-thumbnail

1. 문제 설명

로또의 최고 순위와 최저 순위

2. 문제 분석

교집합을 통해 현 시점의 변동치 않는 '맞은 개수'를, 0의 개수를 통해 최대 더 추가 가능한 '맞을 개수'를 얻어낼 수 있다.

3. 나의 풀이

import Foundation

func solution(_ lottos:[Int], _ win_nums:[Int]) -> [Int] {
    var zeroCnt = lottos.filter{$0 == 0}.count
    var intersectionCnt = Set(lottos).intersection(Set(win_nums)).count
    var (minCnt, maxCnt) = (intersectionCnt, intersectionCnt + zeroCnt)
    minCnt = minCnt == 0 ? 6 : 7 - minCnt
    maxCnt = maxCnt == 0 ? 6 : 7 - maxCnt
    return [maxCnt, minCnt]
}
profile
JUST DO IT

0개의 댓글