문제출처: https://programmers.co.kr/learn/courses/30/lessons/42888
접근법
문제는 길지만 생각보다 간단한 문제였다.
어떤 유저가 입/퇴장 할 때 마다 로그가 남는 다는 것인데
나는 dict를 통해 각 로그마다 (uid,username)으로 저장했다.
그리고 answer에 uid + "/님이 들어왔습니다" 의 형태로 저장했는데 이는 나중에 "/"를 기준으로 split 하여 uid를 key로 하는 value로 마지막에 바꿔주었다.
엄청 깔끔한 코드는 아니지만 단순 구현을 하면서 생각나는 부분을 바로바로 해결하면서 풀은 점에서 좋았던 것 같다.
코드
def solution(record): answer = [] d = { } for r in record: s = r.split(" ") if( s[0] == "Enter"): d[s[1]] = s[2] answer.append(s[1]+"/님이 들어왔습니다.") elif( s[0] == "Leave"): answer.append(s[1]+"/님이 나갔습니다.") elif( s[0] == "Change"): d[s[1]] = s[2] for i,a in enumerate(answer): s = a.split("/") answer[i] = d[s[0]] + s[1] return answer