코딩테스트 연습 - 오픈채팅방 | 프로그래머스 스쿨 (programmers.co.kr)
나의 풀이
.
Change로 닉네임이 변경될 때 기존의 닉네임을 변경하는 것에 어려움이 있었다.
모범 답안
def solution(record):
dic={}
result=[]
for rec in record:
record_split = rec.split()
if len(record_split) == 3:
dic[record_split[1]] = record_split[2]
for rec in record:
record_split = rec.split()
if record_split[0] == 'Enter':
result.append(f'{dic[record_split[1]]}님이 들어왔습니다.')
elif record_split[0] == 'Leave':
result.append(f'{dic[record_split[1]]}님이 나갔습니다.')
return result
고유값인 uid를 key값으로, 닉네임을 value값으로 딕셔너리를 이용해 저장하여 변경되는 닉네임이 있더라도 마지막에 수정된 닉네임으로 value값이 저장되게 하여 간단히 문제를 해결할 수 있다.
'코딩테스트 > programmers (python)' 카테고리의 다른 글
Programmers / 2단계 / [3차] 파일명 정렬 / python / 2018 KAKAO BLIND RECRUITMENT (1) | 2024.03.12 |
---|---|
Programmers / 2단계 / 스킬트리 / python / Summer/Winter Coding(~2018) (0) | 2024.03.11 |
Programmers / 해시 문제 모음 (0) | 2024.03.09 |
Programmers / DFS / BFS 문제 모음 (0) | 2024.03.08 |
Programmers / 2단계 / 주차 요금 계산 / python / 2022 KAKAO BLIND RECRUITMENT (0) | 2024.03.06 |