문제
카카오 2019 공채 출제 문제.
문제 자체는 어렵진 않은거 같은데 구현이 약간 노가다라서 실전에 나오면 어지러울거 같은 문제이다...
출력 로그를 담당하는 log리스트와 사용자의 닉네임을 관리하는 uid 딕셔너리를 만들어서 record값을 순서대로 받아 처리하였다.
import sys
input = sys.stdin.readline
def solution(record):
log = []
uid = {}
for com in record:
x = com.split(" ")
if x[0] == "Enter":
uid[x[1]] = x[2]
log.append([x[0], x[1]])
elif x[0] == "Leave":
log.append([x[0], x[1]])
else: # "Change"일 경우
uid[x[1]] = x[2]
answer = []
for tmp in log:
if tmp[0] == "Enter":
a = f"{uid[tmp[1]]}님이 들어왔습니다."
else:
a = f"{uid[tmp[1]]}님이 나갔습니다."
answer.append(a)
return answer