슈콩

[프로그래머스] Lv.2 오픈채팅방 본문

Algorithms/Programmers

[프로그래머스] Lv.2 오픈채팅방

shukong 2025. 10. 17. 10:50

 

 

 

[문제]

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

 

 

[소스 코드]

import java.util.*;
class Solution {
    public String[] solution(String[] record) {
        List<String> order = new ArrayList<>();
        List<String> inout = new ArrayList<>();
        Map<String, String> hm = new HashMap<>();
        for(String info : record){
            String[] msg = info.split(" ");
            String id = msg[1];
            if(msg[0].equals("Enter")){
                String name = msg[2];
                order.add(id);
                inout.add("Enter");
                hm.put(id,name);
            }
            else if(msg[0].equals("Leave")){
                order.add(id);
                inout.add("Leave");
            }
            else{
                String name = msg[2];
                hm.put(id,name);
            }
        }
        String[] answer = new String[order.size()];
        for(int i=0;i<order.size();i++){
            String name = hm.get(order.get(i));
            if(inout.get(i).equals("Enter")){
                answer[i] = name + "님이 들어왔습니다.";   
            }
            else{
                answer[i] = name + "님이 나갔습니다.";
            }
        }
    
        return answer;
    }
}