[프로그래머스 level2] 오픈채팅방_2019 카카오

김예지·2021년 10월 20일
0

문제

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한다. 이때, 이름은 첫번째 반복문에서 만들어준것을 가져오면 된다.
스스로 푼 문제라서 아주 뿌듯뿌듯👏🏻


참고

profile
내가 짱이다 😎 매일 조금씩 성장하기🌱

0개의 댓글