[Lv2][카카오 코딩테스트]오픈채팅방

건너별·2021년 11월 3일
0

algorithm

목록 보기
1/27

문제 풀기

def solution(record):
    id_dic = {}
    answer = []
    for sen in record:
        sen = sen.split(' ')


        if sen[0]=='Enter':
            id_dic[sen[1]]=sen[2]
            answer.append([sen[1],'님이 들어왔습니다.'])
        if sen[0] == 'Leave':
            answer.append([sen[1],'님이 나갔습니다.'])
        if sen[0] == 'Change':
            id_dic[sen[1]] = sen[2]

    for i, log in enumerate(answer):
        log[0]=id_dic[log[0]]
        answer[i]=log[0]+log[1]

    return answer

keypoint

  • 아이디 정보는 dictionary에서 update하면 편함.
  • 출력 기록을 순서를 반영해서(list) 미리 만들어놓되, 닉네임이 아닌 아이디로 만들어 놓고 마지막에 최신 정보가 담긴 dictionary로부터 리스트에 있는 id정보를 닉네임정보로 바꿈.
profile
romantic ai developer

0개의 댓글