IT보안관의 공부 클라우드

[프로그래머스 Lv.2]오픈채팅방 본문

코딩 테스트/구름

[프로그래머스 Lv.2]오픈채팅방

ㅡㅡㅡㅡㄷ 2022. 6. 19. 16:51

https://programmers.co.kr/learn/courses/30/lessons/42888?language=python3 

 

코딩테스트 연습 - 오픈채팅방

오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오

programmers.co.kr

def solution(record):
    #딕셔너리를 통해 가장 최근 id=name 값 저장
    uid_name = {}
    answer = []
    #uid, name 저장
    for i in record:
        action = i.split()[0]
        if action != "Leave":
            uid = i.split()[1]  
            name = i.split()[2]
            uid_name[uid]=name
    
    #uid에 맞게 Enter, Leave 결과 값 저장
    for i in record:
        action = i.split()[0]
        uid = i.split()[1] 
        name=uid_name[uid]
        if action == "Enter":
            answer.append(name+"님이 들어왔습니다.")
        elif action == "Leave":
            answer.append(name+"님이 나갔습니다.")
    return answer

 

1. 딕셔너리의 Key 값이 중복될 수 없는 특징을 이용하여, uid 값과 name 값을 가장 최근 값으로 저장.

2. Enter, Leave에 맞는 출력문을 answer에 저장.

Comments