[알고리즘] 프로그래머스-오픈채팅방

fooooif·2021년 6월 23일
0
post-thumbnail

✍ 문제

👏 풀이과정

문제를 보면 userId는 바뀌지 않지만 닉네임은 바뀐다고 써져 있다. 마지막에 출력하는 곳에는 맨 마지막에 바뀐 닉네임으로 출력하라 했으니 해쉬맵으로 userId를 키값으로 닉네임을 value 값으로 받아주었다.

import java.util.HashMap;

class Solution {
   
    public String[] solution(String[] record) {
        String[] answer = {};
        HashMap<String, String> hashMap = new HashMap<>();
        
        int count_change = 0;
        for(int i = 0; i < record.length; i++){
            if(!record[i].split(" ")[0].equals("Leave")){
                hashMap.put(record[i].split(" ")[1], record[i].split(" ")[2] );
            }
            
            if(record[i].split(" ")[0].equals("Change")){
                count_change++;
            }
        }
        int t = 0;
        answer = new String[record.length - count_change];
        for(int i = 0; i < record.length; i++){
            if(record[i].split(" ")[0].equals("Enter")){
                answer[t] = hashMap.get(record[i].split(" ")[1])+"님이 들어왔습니다.";
                t++;
                }
            else if(record[i].split(" ")[0].equals("Leave")){
                 answer[t] = hashMap.get(record[i].split(" ")[1])+"님이 나갔습니다.";
                t++;
            }
            else{
                
            }
            
        }
        
        return answer;
    }
}
profile
열심히 하자

0개의 댓글