코딩테스트 연습 - 오픈채팅방 | 프로그래머스 스쿨 (programmers.co.kr)
* 의사코드
- 해쉬맵에 {uid : 최종닉네임} 으로 저장한다.
1. split해서 2차원배열에담기
2. Enter,Change 일때마다 닉네임바꿔주기 => 해쉬맵에는 최종닉네임 저장됨
3. uid에 맞는 최종닉네임들 출력
def solution(record):
answer = []
m=dict()
records=[]
# for i in range(10):
# records.append([])
for str in record:
temp=str.split(' ')
#print(temp)
records.append(temp)
#print(records)
#############입력끝#################
for v in records:
#print(v[0])
if(v[0]=='Enter'):
m[v[1]]=v[2]
elif(v[0]=='Change'):
m[v[1]]=v[2]
elif(v[0]=='Leave'):
pass
#print(m)
##############해시맵에 최종닉넴저장 끝#########
for v in records:
if(v[0]=='Enter'):
answer.append(m[v[1]]+"님이 들어왔습니다.")
elif(v[0]=='Change'):
pass
elif(v[0]=='Leave'):
answer.append(m[v[1]]+"님이 나갔습니다.")
#print(records)
#print(p(record))
# for cmd, uid, nick for record:
# print(cmd, uid, nick)
return answer
'Algorithm > programmers' 카테고리의 다른 글
프로그래머스 로또의 최고 순위와 최저 순위 Java (0) | 2023.08.04 |
---|---|
프로그래머스 실패율 파이썬 // 최대값이 200,000*500이면 시간복잡도를 의심하라, 파이썬 딕셔너리 초기화 방법, 리스트 역순정렬, 딕셔너리 for 순회 (0) | 2023.07.13 |
프로그래머스 프렌즈4블록 cpp // 배열빡구현, check에서 삭제처리인지검사해야 (0) | 2023.07.13 |
프로그래머스 셔틀버스 파이썬 // 2차원 리스트 (0) | 2023.07.12 |
프로그래머스 뉴스클러스터링 파이썬 // 해시맵(dict), 중복집합원소세기 (0) | 2023.07.12 |