오픈채팅방
https://programmers.co.kr/learn/courses/30/lessons/42888
2단계 부수기 진행중..
어렵지 않게 구현할 수 있었는데 map을 사용하는 과정에서 궁금증이 생김 → hashmap vs map?
import java.util.*;
class Solution {
public String[] solution(String[] record) {
String[] answer = {};
ArrayList<String> arr = new ArrayList<>();
HashMap<String, String> map = new HashMap<>();
for(String s : record){
StringTokenizer st = new StringTokenizer(s);
String behave = st.nextToken();
String uid = st.nextToken();
String name = "";
if(!behave.equals("Leave")){
name = st.nextToken();
}
switch(behave){
case "Enter":
map.put(uid, name);
arr.add(uid+"님이 들어왔습니다.");
break;
case "Leave":
arr.add(uid+"님이 나갔습니다.");
break;
case "Change":
map.put(uid, name);
break;
}
}
answer = new String[arr.size()];
int ansidx = 0;
for(String s : arr){
int idx = s.indexOf("님");
String id = s.substring(0, idx);
answer[ansidx] = s.replace(id, map.get(id));
ansidx++;
}
return answer;
}
}
Last updated
Was this helpful?