문제풀이
def solution(record):
answer = []
id_dict = {}
systems = []
for log in record:
logs = log.split()
if logs[0] == "Enter":
id_dict[logs[1]] = logs[2]
systems.append([logs[1], "님이 들어왔습니다."])
elif logs[0] == "Leave":
systems.append([logs[1], "님이 나갔습니다."])
else:
id_dict[logs[1]] = logs[2]
for system in systems:
answer.append(id_dict[system[0]]+system[1])
return answer
알고리즘
특별한 알고리즘이 필요한 문제는 아니다.
나의 풀이는 ID값을 key로 갖는 dict를 만들어서 여기에 닉네임을 저장하고 수정했다. 그리고 system 배열에 사용자의 id와 행동을 저장했다.
마지막으로 dict에 저장된 정보를 바탕으로 system에 저장된 id와 연결지어 답을 완성했다.
출처
문제: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges