https://programmers.co.kr/learn/courses/30/lessons/42888
function solution(record) {
const answer=[];
//아이디-이름 정하기
const map=new Map();
for(let i=0; i<record.length; i++){
const arr1=record[i].split(' ');
if(arr1[0][0]==='E'){
map.set(arr1[1], arr1[2]);
}
else if(arr1[0][0]==='C'){
map.set(arr1[1], arr1[2]);
}
}
//출력(answer배열에 push)
for(let i=0; i<record.length; i++){
const arr2=record[i].split(' ');
if(arr2[0][0]==='E'){
answer.push(`${map.get(arr2[1])}님이 들어왔습니다.`);
}
else if(arr2[0][0]==='L'){
answer.push(`${map.get(arr2[1])}님이 나갔습니다.`);
}
}
return answer;
}
첫번째 반복문에서 record배열을 돌면서 최종 아이디-이름을 저장한다. 그리고 두번째 반복문에서 다시 record를 돌면서 E, L에 따라 올바른 문장을 출력할 수 있도록 문장을 만들어 주고 answer 배열에 push한다. 이때, 이름은 첫번째 반복문에서 만들어준것을 가져오면 된다.
스스로 푼 문제라서 아주 뿌듯뿌듯👏🏻