티스토리 뷰

programmers.co.kr/learn/courses/30/lessons/42888

 

코딩테스트 연습 - 오픈채팅방

오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오

programmers.co.kr

 

#include<vector>
#include<string>
#include<unordered_map>
#include<sstream>

using namespace std;

vector<string> solution(vector<string> record) {
	vector<string> answer;
	unordered_map<string, string> idmap;

	for (vector<string>::iterator it = record.begin(); it != record.end(); ++it) {
		stringstream ss(*it);
		string cmd, id, name;
		ss >> cmd;
		if (cmd.compare("Enter") == 0) {
			ss >> id >> name;
			idmap[id] = name;
		}
		else if (cmd.compare("Change") == 0) {
			ss >> id >> name;
			idmap[id] = name;
		}
	}

	for (vector<string>::iterator it = record.begin(); it != record.end(); ++it) {
		stringstream ss(*it);
		string cmd, id;
		ss >> cmd;
		if (cmd.compare("Enter") == 0) {
			ss >> id;
			answer.push_back(idmap[id] + "님이 들어왔습니다.");
		}
		else if (cmd.compare("Leave") == 0) {
			ss >> id;
			answer.push_back(idmap[id] + "님이 나갔습니다.");
		}
	}

	return answer;
}
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함