Skip to content

Latest commit

 

History

History
53 lines (41 loc) · 1.18 KB

오픈채팅방.md

File metadata and controls

53 lines (41 loc) · 1.18 KB

programmers

2019 카카오 오픈채팅방

문제링크

코드

import Foundation

func orderToString(_ order: String) -> String {
    if order == "Enter" {
        return "님이 들어왔습니다."
    } else if order == "Leave" {
        return "님이 나갔습니다."
    } else {
    return ""
    }
}

func solution(_ records:[String]) -> [String] {
    var result: [String] = []
    var tempResult: [String] = []
    var dictID: [String: String] = [:]

    for record in records {
        let order: String = record.components(separatedBy:" ")[0]
        let uid: String = record.components(separatedBy:" ")[1]
        if order != "Leave" {
            let name: String = record.components(separatedBy:" ")[2]
            dictID.updateValue(name, forKey: uid)
        }
    }

    for record in records {
        let order: String = record.components(separatedBy:" ")[0]
        let uid: String = record.components(separatedBy:" ")[1]
        if order != "Change"{
            result.append(dictID[uid]! + orderToString(order))
        }
    }
    return result
}

풀이 이유

참고한 내용