Recent Posts
Notice
No Rules Rules
오픈채팅방 (feat. 프로그래머스, 42888번) 본문
728x90
반응형
// woohyeon.kim
#include <string>
#include <vector>
#include <sstream>
#include <map>
using namespace std;
vector<string> token_string(const string& text)
{
vector<string> result;
string token;
stringstream ss(text);
while(getline(ss, token, ' '))
{
result.push_back(token);
}
return result;
}
vector<string> solution(vector<string> record) {
map<string, string> users;
for(auto iter = record.rbegin(); iter != record.rend(); ++iter)
{
if(((*iter).find("Enter") != string::npos) ||
((*iter).find("Change") != string::npos))
{
auto tokens = token_string(*iter);
if(users.find(tokens[1]) == users.end())
{
users[tokens[1]] = tokens[2];
}
}
}
vector<string> answer;
for(const auto& record_item : record)
{
auto tokens = token_string(record_item);
if(tokens[0] == "Enter")
answer.push_back(users[tokens[1]] + "님이 들어왔습니다.");
else if(tokens[0] == "Leave")
answer.push_back(users[tokens[1]] + "님이 나갔습니다.");
}
return answer;
}
// *&)*@*
Change 문자열이 포함된 record는 answer에 담지 않는다는게 핵심.
728x90
반응형
'생활 > 코테' 카테고리의 다른 글
카드 구매하기 (feat. 백준, 11052번) (0) | 2022.07.20 |
---|---|
이친수 (feat. 백준, 2193번) (0) | 2022.07.20 |
문자열 압축 (feat. 프로그래머스, 60057번) (0) | 2022.07.20 |
신규 아이디 추천 (feat. 프로그래머스, 72410번) (0) | 2022.07.20 |
로또의 최고 순위와 최저 순위 (feat. 프로그래머스, 77484번) (0) | 2022.07.20 |
Comments