문제를 보면 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;
}
}