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

이서현·2021년 5월 6일
0

Algorithm

목록 보기
12/76

05.06에 푼 문제입니다🌷
오픈채팅방

닉네임이 채팅방을 나가서 바꾸고 온 상황과 채팅방 안에서 바꾼 상황을 생각해야 한다.
닉네임 id는 동일하니까 map을 사용해서 key로 넣어준다.
닉네임은 value로 입력한다.
닉네임이 바뀌면 key에 대한 value가 바뀐다.

function solution(records) {
    var answer = [];
    var list =[]
    var names =new Map();
    
    for (let record of records){
        record=record.split(' ')
        if(record[0]==='Enter'){
            names.set(record[1],record[2])
            list.push([record[1],'님이 들어왔습니다.'])
        }
        else if(record[0]==='Leave'){
            list.push([record[1],'님이 나갔습니다.'])
        }
        else if(record[0]==='Change'){
            names.set(record[1],record[2])
            
        }
    }
    
    for (let i in list){
        answer.push(names.get(list[i][0])+list[i][1])
    }
    return answer;
}
profile
안녕하세요. 이서현입니다( ღ'ᴗ'ღ )

0개의 댓글