오픈채팅방

LJM·2023년 8월 14일
0

programmers

목록 보기
57/92

https://school.programmers.co.kr/learn/courses/30/lessons/42888

HashMap 으로 변경된 닉네임을 계속 업데이트 해주고
문자열을 만들때 사용하여서 해결하였다.
30분정도 걸린듯하다

import java.util.*;

class Solution {
    public String[] solution(String[] record) {
        
        
        HashMap<String, String> map = new HashMap<>();//id, nickname
    
        
        //들어왔을때도 변경체크
        for(int i = 0; i < record.length; ++i)
        {
            String[] input = record[i].split(" ");
            
            if(input[0].equals("Enter") || input[0].equals("Change"))
            {
                map.put(input[1], input[2]);
            }
        }
        
        ArrayList<String> arr = new ArrayList<>();

        for(int i = 0; i < record.length; ++i)
        {
            String[] input = record[i].split(" ");
            if(input[0].equals("Enter"))
            {
                arr.add(map.get(input[1]) + "님이 들어왔습니다.");
            }
            else if(input[0].equals("Leave"))
            {
                arr.add(map.get(input[1]) + "님이 나갔습니다.");
            }

        }
        String[] answer = new String[arr.size()];
        for(int i = 0; i < arr.size(); ++i)
        {
            answer[i] = arr.get(i);
        }
        
        return answer;
    }
}
profile
게임개발자 백엔드개발자

0개의 댓글