https://programmers.co.kr/learn/courses/30/lessons/42888
split 함수를 구현 + map활용하는 간단한 문제
#include <string>
#include <vector>
#include <sstream>
#include <iostream>
#include <map>
using namespace std;
vector<string> split(string str, char Delimiter) {
istringstream iss(str);
string buffer;
vector<string> result;
while (getline(iss, buffer, Delimiter)) {
result.push_back(buffer);
}
return result;
}
vector<string> solution(vector<string> record) {
vector<string> answer;
vector<vector<string>> vv(record.size());
map<string, string> m;
for(int i=0; i<record.size(); i++){
vv[i] = split(record[i], ' ');
if(vv[i][0]=="Enter" || vv[i][0]=="Change"){
m[vv[i][1]] = vv[i][2];
}
}
for(int i=0; i<vv.size(); i++){
string act = vv[i][0];
string msg = m[vv[i][1]];
if(act == "Enter"){
msg += "님이 들어왔습니다.";
}
else if(act == "Leave"){
msg += "님이 나갔습니다.";
}
else{
continue;
}
answer.push_back(msg);
}
return answer;
}
'알고리즘 > 알고리즘' 카테고리의 다른 글
[C++] 프로그래머스 : 단체사진찍기 (0) | 2022.06.09 |
---|---|
[C++] 프로그래머스 : N으로 표현 (0) | 2022.06.01 |
[C++] 백준 1911 : 흙길 보수하기 (0) | 2022.05.20 |
[C++] 프로그래머스 : 문자열 압축 (0) | 2022.05.17 |
[C++] 백준 20157번 : 화살을 쏘자! (0) | 2022.05.16 |