프로그래머스 C++

프로그래머스 오픈채팅방 C++

Srff5123 2024. 12. 31. 20:06
728x90

 

매개변수로 주어진 record에는 오픈채팅방의 

Enter 고유아이디 닉네임
Leave 고유아이디
Change 고유아이디 바뀐닉네임이 문자열 배열로 주어지는데

 

Change를 통해 닉네임을 바꾸거나 나갔다 들어오면서 닉네임을 바꾸면 

고유아이디를 통해 이전에 했던 입출 기록이 바뀐 닉네임으로 새롭게 업데이트가 된다.

마지막으로 업데이트되는 채팅방의 입출기록을 answer 문자열 배열에 담아 리턴하는 문제

 

해당 문제도 map을 이용해 풀었다

고유아이디를 Key값으로 받고 닉네임을 value로 받아 저장한다.

 

매개변수 record에 있는 문자열 배열을 공백을 기준으로 입출, id, nickname으로 나누고

입출에 따라 맵에 값을 저장한다

 

enter와 change의 경우에는 map에 있는 고유 아이디에 따라 value의 값을 업데이트해주고

 

vector에 입출과 id의 기록을 저장해준다.

 

다음 반복문을 vector에 저장한 값을 pair에 옮기며

입출에 따른 id를 map에서 불러와 answer에 문자열로 저장하면 된다.

 

728x90