새소식

인기 검색어

프로그래머스/Lv.1

[Swift] 신고 결과 받기

  • -
import Foundation

func solution(_ id_list:[String], _ report:[String], _ k:Int) -> [Int] {
    var reported: [String: Int] = [:]
    var user: [String: [String]] = [:]

   
    
    for r in Set(report) {
        let splited = r.split(separator: " ").map { String($0) }
        user[splited[0]] = (user[splited[0]] ?? []) + [splited[1]]
        reported[splited[1]] = (reported[splited[1]] ?? 0) + 1
    }

    return id_list.map { id in
        return (user[id] ?? []).reduce(0) {
            $0 + ((reported[$1] ?? 0) >= k ? 1 : 0)
        }
    }
}

 

'프로그래머스 > Lv.1' 카테고리의 다른 글

[Swift] 실패율  (0) 2023.02.15
[Swift] 신규 아이디 추천  (0) 2023.02.15
[Swift] 시저 암호  (0) 2023.02.15
[Swift] 숫자 짝궁  (0) 2023.02.15
[Swift] 숫자 문자열과 영단어  (0) 2023.02.15
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.