영호

[프로그래머스] 2019카카오 BLIND - 오픈채팅방 (Python) 본문

Algorithm/kakao

[프로그래머스] 2019카카오 BLIND - 오픈채팅방 (Python)

0h0 2022. 5. 9. 20:53

[프로그래머스] 2019카카오 BLIND 오픈채팅방 (Python)

문제 설명

- https://programmers.co.kr/learn/courses/30/lessons/42888

나의 풀이

  1. uid : name 형태의 uid_name dictionary생성
  2. record를 순회하며 변경되는 uid : name 최신화
  3. 다시 한 번 record를 순회하며 'Enter' or 'Leave'인 경우 uid_name[uid]를 조회해 '~~ 님이 들어왔습니다' or '~~님이 나갔습니다' answer에 append.

Code

#https://programmers.co.kr/learn/courses/30/lessons/42888 2019 KAKAO BLIND RECRUITMENT

def solution(record):
    uid_name = {}
    answer = []

    # 최종 변경된 유저의 이름이 uid:name형태로 저장
    for i in record:
        if i[:5] != 'Leave':
            behave, uid, name = i.split(" ")
            uid_name[uid] = name

    for i in record:
        if i[:5] == 'Enter':
            behave, uid, name = i.split(" ")
            answer.append(uid_name[uid] + "님이 들어왔습니다.")
        elif i[:5] == 'Leave':
            behave, uid = i.split(" ")
            answer.append(uid_name[uid] + "님이 나갔습니다.")

    return answer

Git 주소

https://github.com/youngh0/Algorithm/blob/master/kakao/LV2/open_chatting.py

 

Comments