https://www.acmicpc.net/problem/7785
이 문제는 문자열 변수 2개를 받고 만약 enter이라면 set 자료형을 통해 넣어주고 leave이면 제거해주면 된다. 그 후에 역순으로 출력해주면된다.
정답코드
#include "iostream"
#include "set"
#include "string"
using namespace std;
set<string> s;
int main() {
int n;
cin >> n;
for (int i = 0; i < n; i++) {
string name, action;
cin >> name >> action;
if (action == "enter") {
s.insert(name); // 회사에 들어왔으면 set에 추가
}
else if (action == "leave") {
s.erase(name); // 나갔으면 set에서 제거
}
}
// 역순으로 출력
for (auto it = s.rbegin(); it != s.rend(); ++it) {
cout << *it << '\n';
}
return 0;
}
'코딩테스트 > 백준' 카테고리의 다른 글
[백준][C++]1764번. 듣보잡 (0) | 2024.09.30 |
---|---|
[백준][C++]1620번. 나는야 포켓몬 마스터 이다솜 (3) | 2024.09.27 |
[백준][C++]14425번. 문자열 집합 (1) | 2024.09.26 |
[백준][C++]10815번. 숫자 카드 (0) | 2024.09.25 |
[백준][C++]18870번. 좌표 압축 (0) | 2024.09.24 |