[카카오] 2019 KAKAO BLIND RECRUITMENT 1차 풀이 – 오픈채팅방

이 포스팅에서는 2020 카카오 블라인드 채용 1차 문제인 ‘오픈채팅방’ 문제를 해설합니다. 본 풀이에 대한 테스트는 https://programmers.co.kr/learn/courses/30/lessons/42888에서 수행하였으며 공식 풀이와 일치하지 않을 수 있습니다.

공식 풀이는 링크를 참조하시기 바랍니다.


오픈채팅방

출처 : 2019 KAKAO 블라인드 채용 온라인 1차
링크 : https://programmers.co.kr/learn/courses/30/lessons/42888
카테고리 : Greedy
난이도 : 쉬움


문제 설명

유저가 채팅 방에 들어오거나, 나가거나 닉네임을 변경한 기록들을 참조해서 최종적으로 대화방에 표시되는 메시지를 출력하면 된다.


문제 풀이

레코드를 분석하여 길이가 3인 것은 채팅방 입장이거나 닉네임 변경이므로, 이 경우를 탐지하여 dictionary에 userID에 해당하는 닉네임을 계속 업데이트 해나간다.

이후 다시 레코드를 순차적으로 분석해서 userID에 해당하는 닉네임을 dictionary에서 참조하여 출력하면 된다.


정답 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def solution(records):
answer = []
dic = {}
for record in records:
info = record.split()
if len(info) == 3:
identifier, nick = info[1], info[2]
dic[identifier] = nick
for record in records:
info = record.split()
action, nick = info[0], dic[info[1]]
if action == “Enter”:
answer.append(nick + “님이 들어왔습니다.”)
elif action == “Leave”:
answer.append(nick + “님이 나갔습니다.”)
return answer
cs

Competition 카카오 블라인드 채용 오픈채팅방

admin

Recent Posts

2025년 10월 12일 일요일 – 서울 생활 176주차

AI AI Agent들이 어느 정도 유용한 건 맞지만, 생각보다 성능이 그렇게 시원찮은지는 모르겠다. 특히나 코드…

2개월 ago

2025년 9월 21일 일요일 – 서울 생활 173주차

중간 점검 시간이 얼마나 빠른지 여름이 훌쩍 지나 3분기는 이제 겨우 한 주가 남아, 올해의…

3개월 ago

2025년 9월 7일 일요일 – 서울 생활 171주차

금주 금주를 시작해보기로 했다. 이미 술을 먹기로 하고 잡은 2개의 회식들은 예외로 하고, 나머지 자리에서는…

3개월 ago

2025년 8월 31일 일요일 – 서울 생활 170주차

티앤미미 예약이 그렇게 힘들다는 티앤미미를 처남네가 운좋게 예약해서 어제 저녁 다녀왔다. 딤섬이 그렇게 맛있다고 하는데,…

3개월 ago

2025년 8월 17일 일요일 – 서울 생활 168주차

아난티 부산 시설과 고객 서비스가 이렇게 극단적으로 다른 방향인 호텔이 있을까 싶다. 시설의 퀄리티는 5성급이라기에…

4개월 ago

2025년 8월 3일 일요일 – 서울 생활 166주차

스트레스 관리 ENTJ 성격 특인지는 몰라도, 나는 계획했던 일에 변수가 생기면 그 순간 큰 스트레스를…

4개월 ago

This website uses cookies.