공대생의 비망록

[프로그래머스][Lv. 1] 로또의 최고 순위와 최저 순위 Swift 풀이 본문

Programming Language/Swift

[프로그래머스][Lv. 1] 로또의 최고 순위와 최저 순위 Swift 풀이

myungsup1250 2022. 3. 14. 15:22

https://programmers.co.kr/learn/courses/30/lessons/77484

 

코딩테스트 연습 - 로또의 최고 순위와 최저 순위

로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호

programmers.co.kr

풀이는 차차 올리겠습니다...

 

 

 

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
import Foundation
 
func solution(\_ lottos:\[Int\], \_ win\_nums:\[Int\]) -> \[Int\] {
    let place: \[Int : Int\] = \[6:15:24:33:42:5\]//, 1:6, 0:6\]
    var match: Int = 0, zeros: Int = 0
    lottos.forEach {
        if $0 == 0 {
            zeros += 1
            return // continue와 같은 역할
        }
        if win\_nums.contains($0) {
            match += 1
        }
    }
    var max: Int = 0, min: Int = 0
    if let maxPlace = place\[match + zeros\] {
        max = maxPlace
    } else {
        max = 6
    }
    if let minPlace = place\[match\] {
        min = minPlace
    } else {
        min = 6
    }
    
    return \[max, min\]
}
cs
Comments