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;
}