๋ฌธ์
ํต๊ณผ ์ฝ๋
#include <string>
#include <vector>
#include <map>
using namespace std;
struct DB{
string status;
string id;
string name;
};
map<string,string>m;
vector<DB>userDB;
void inp(string s){
int cnt=0;
DB db;
string temp;
for(int i=0; i<s.length(); i++){
if(s[i]!=' ') temp+=s[i];
else{
if(cnt==0) db.status=temp;
else if(cnt==1) db.id=temp;
cnt++;
temp.clear();
}
}
if(cnt==1) db.id=temp;
if(cnt==2) db.name=temp;
if(db.status!="Leave") m[db.id]=db.name;
userDB.push_back(db);
}
vector<string> solution(vector<string> record) {
vector<string> answer;
for(int i=0; i<record.size(); i++){
inp(record[i]);
}
for(int i=0; i<userDB.size(); i++){
string inp;
userDB[i].name=m[userDB[i].id];
if(userDB[i].status=="Leave"){
inp=userDB[i].name+"๋์ด ๋๊ฐ์ต๋๋ค.";
answer.push_back(inp);
}
else if(userDB[i].status=="Enter"){
inp=userDB[i].name+"๋์ด ๋ค์ด์์ต๋๋ค.";
answer.push_back(inp);
}
}
return answer;
}
์๊ฐ ์ด๊ณผ ํ์ด
#include <iostream>
#include <vector>
#include <string>
using namespace std;
struct DB{
string status;
string id;
string name;
};
vector<DB>userDB;
void change(string name,string id){
for(int i=0; i<userDB.size(); i++){
if(userDB[i].id==id) userDB[i].name=name;
}
}
string find_name(string id){
string name;
for(int i=(int)userDB.size(); i>=0; i--){
if(userDB[i].id==id) name=userDB[i].name;
}
return name;
}
void inp(string s){
int cnt=0;
DB db;
string temp;
for(int i=0; i<s.length(); i++){
if(s[i]!=' ') temp+=s[i];
else{
if(cnt==0) db.status=temp;
else if(cnt==1) db.id=temp;
cnt++;
temp.clear();
}
}
if(cnt==1) db.id=temp;
if(cnt==2) db.name=temp;
if(db.status=="Change"||db.status=="Enter"){
change(db.name,db.id);
}
else if(db.status=="Leave") db.name=find_name(db.id);
userDB.push_back(db);
}
int main(){
int n; cin>>n;
cin.ignore();
for(int i=0; i<n; i++){
string s; getline(cin,s);
inp(s);
}
for(int i=0; i<userDB.size(); i++){
if(userDB[i].status=="Enter") cout<<userDB[i].name<<"๋์ด ๋ค์ด์์ต๋๋ค."<<'\n';
else if(userDB[i].status=="Leave") cout<<userDB[i].name<<"๋์ด ๋๊ฐ์ต๋๋ค."<<'\n';
}
}
'Algorithm ๐ง๐ปโ๐ป > ํ๋ก๊ทธ๋๋จธ์ค(Programmers)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์ด์ํ ๋ฌธ์ ๋ง๋ค๊ธฐ( Level 1) (0) | 2021.10.22 |
---|---|
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์์ ๋ํ๊ธฐ( Level 1) (0) | 2021.10.22 |
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์์ฃผํ์ง ๋ชปํ ์ ์( Level 1) (0) | 2021.10.22 |
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์์ฐ( Level 1) (0) | 2021.10.22 |
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์คํจ์จ( Level 1) (0) | 2021.10.22 |
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์ ๊ท ์์ด๋ ์ถ์ฒ( Level 1, 2021 ์นด์นด์ค ๋ธ๋ผ์ธ๋) (0) | 2021.10.22 |
๋๊ธ