

-Code
import java.util.*;
class Solution {
static class Member {
String id;
boolean exit;
public Member(String id, boolean exit) {
this.id = id;
this.exit = exit;
}
}
public String[] solution(String[] record) {
Map<String, String> idAndName = new HashMap<>();
List<Member> log = new ArrayList<>();
for (String line : record) {
StringTokenizer st = new StringTokenizer(line);
String move = st.nextToken();
String id = st.nextToken();
// 들어가고 나간거 저장
if (move.equals("Leave")) {
Member member = new Member(id, true);
log.add(member);
} else {
String name = st.nextToken();
if (move.equals("Enter")) {
Member member = new Member(id, false);
log.add(member);
}
// id, name 저장
idAndName.put(id, name);
}
}
// 변경된 닉네임 포함해서 저장
String[] answer = new String[log.size()];
for (int i = 0; i < log.size(); i++) {
Member member = log.get(i);
StringBuilder sb = new StringBuilder();
String isExit = member.exit ? "나갔습니다." : "들어왔습니다.";
sb.append(idAndName.get(member.id))
.append("님이 ")
.append(isExit);
answer[i] = sb.toString();
}
return answer;
}
}'Beakjoon&프로그래머스 > Java' 카테고리의 다른 글
| [프로그래머스/Java] 삼각 달팽이 (0) | 2026.04.05 |
|---|---|
| [백준/Java] 33904번 삼각형 (1) | 2026.04.05 |
| [백준/Java] 33904번 불필요한 for문 (0) | 2026.04.04 |
| [백준/Java] 7484번 Bowling (0) | 2026.04.03 |
| [백준/Java] 9727번 Mini Sudoku X (0) | 2026.04.03 |