반응형
문제출처
https://www.welcomekakao.com/learn/courses/30/lessons/42888
닉네임은 중복이 가능하므로 Set이 아니라 Map을 사용하였습니다.
1번문제인만큼 난이도는 낮네요!
소스코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | import java.util.HashMap; import java.util.LinkedList; import java.util.List; import java.util.Map; public class Solution { public String[] solution(String[] record) { Map<String, String> idMap = new HashMap<>(); List<String[]> tmp = new LinkedList<>(); for (String records : record) { String[] keyWord = records.split(" "); if (keyWord[0].equals("Enter")) { idMap.put(keyWord[1], keyWord[2]); tmp.add(keyWord); } else if (keyWord[0].equals("Change")) { idMap.put(keyWord[1], keyWord[2]); } else { tmp.add(keyWord); } } String[] answer = new String[tmp.size()]; int idx = 0; for (String[] keyWords : tmp) { String nickName = idMap.get(keyWords[1]); if (keyWords[0].equals("Enter")) answer[idx++] = nickName + "님이 들어왔습니다."; else answer[idx++] = nickName + "님이 나갔습니다."; } return answer; } } | cs |
반응형
'Algorithm' 카테고리의 다른 글
[BOJ 3047] ABC (0) | 2019.01.06 |
---|---|
[BOJ 1987] 알파벳 (0) | 2019.01.05 |
[카카오 2019] 코딩테스트 - 실패율 (0) | 2019.01.03 |
[프로그래머스 42842] 카펫 (2) | 2019.01.02 |
[프로그래머스 43162] 네트워크 (0) | 2019.01.01 |