포스트

135. 7의 개수


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import Foundation

func solution(_ array:[Int]) -> Int {
    
    var arr : [String] = []
    var answer : Int = 0
    
    arr = array.map{String($0)}.joined().map{String($0)}
    
    for i in arr.indices {
        if arr[i] == "7" {
            answer += 1
        }
    }

    return answer
}

7,77,17을 문자열로 합친뒤 다시 map을 하여 7,7,7,1,7 이렇게 분류하였고 for문을 통해 7일때 1씩더했다.

원래 하고싶었던것은 고차함수로 끝내고 싶었는데 그것까지는 못하였다.

다른 코드를 보며 뭐가 부족한지 알았다.

filter를 걸고 뒤에 .count만 했으면 끝날 문제였다….

1
array.map{String($0)}.joined().map{String($0)}.filter{$0 == "7"}.count
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.