카톡 오픈채팅방 입출기록
2025. 1. 11. 17:24ㆍ정보처리,전산/코딩 : 문제해결
반응형
record = ["Enter uid1234 Muzi", "Enter uid4567 Prodo", "Leave uid1234", "Enter uid1234 Muzi", "Change uid4567 Ryan"]
print(solution(record))
def solution(record):
answer = []
trace = []
Map = {}
# 입력된 record에서 사용자 이벤트 처리
for r in record:
temp = r.split(' ')
if temp[0] == 'Enter':
Map[temp[1]] = temp[2] # 사용자 ID와 이름을 저장
trace.append([temp[0], temp[1]]) # Enter 이벤트를 trace에 기록
elif temp[0] == 'Leave':
trace.append([temp[0], temp[1]]) # Leave 이벤트를 trace에 기록
else:
Map[temp[1]] = temp[2] # 이름 변경 (Change 이벤트)
# trace를 처리
for t in trace:
action, user_id = t
if action == 'Enter':
answer.append(f"{Map[user_id]}님이 들어왔습니다.")
elif action == 'Leave':
answer.append(f"{Map[user_id]}님이 나갔습니다.")
return answer
반응형
'정보처리,전산 > 코딩 : 문제해결' 카테고리의 다른 글
배열 (0) | 2024.11.12 |
---|---|
소인수 개수 (0) | 2024.07.21 |
배열 자리 거꾸로 swap (0) | 2024.06.22 |
배열에서 각 요소보다 작은 요소들의 수 (0) | 2024.04.19 |
원형 큐 circular queue (0) | 2024.04.10 |