https://programmers.co.kr/learn/courses/30/lessons/42888
- 해쉬맵으로 들어온 유저, 아이디를 바꾼 유저를 계속 업데이트 해주고, 들어오고 나간 결과값 스트링 벡터를 만들어서 리턴해주면 된다.
- stringstream은 c++로 문자열 파싱문제를 푸는 데 있어서 구세주다.. strtok 방식과 함께 익혀두면 좋다.
#include <iostream>
#include <sstream>
#include <string>
#include <unordered_map>
#include <vector>
using namespace std;
vector<string> solution(vector<string> record) {
vector<string> answer;
unordered_map<string, string> umap;
string cmd, uid, nickname;
for (string& s : record) {
stringstream ss(s);
ss >> cmd >> uid >> nickname;
if (cmd == "Enter" || cmd == "Change") {
umap[uid] = nickname;
}
}
for (string& s : record) {
stringstream ss(s);
ss >> cmd >> uid >> nickname;
if (cmd == "Enter") {
answer.push_back(umap[uid] + "님이 들어왔습니다.");
} else if (cmd == "Leave") {
answer.push_back(umap[uid] + "님이 나갔습니다.");
}
}
return answer;
}
'Algorithm > programmers' 카테고리의 다른 글
2019 Kakao blind 42890 - 후보키(완전탐색, 비트마스킹) c++ 풀이 (0) | 2021.09.06 |
---|---|
2019 Kakao blind 42889 - 실패율(구현, 숫자 연산) c++ 풀이 (0) | 2021.09.06 |
2021 Kakao blind - 광고 삽입(시간 문자열 파싱, 구간합-슬라이딩 윈도우) c++, java 풀이 (0) | 2021.09.06 |
2021 Kakao blind 72413 - 합승 택시 요금(플로이드-와샬, 완전탐색) c++ 풀이 (0) | 2021.09.06 |
2021 Kakao blind 72412 - 순위 검색(문자열 파싱, 비트마스킹, 이진탐색) c++ 풀이 (0) | 2021.09.06 |