티스토리 뷰
대기업에서 근무하는 상근이가 사내 근퇴 로그를 가지고 있다.
현재 퇴근하지 않아서 사내에 근무중인 사원의 명단을 사즌의 역순으로 출력하는 문제다.
input
출입 로그 숫자
사원명 출근or퇴근
output
근무중 사원의 이름
#include<iostream>
#include<set>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int personCnt = 0;
string person[2];
set<string> state;
cin >> personCnt;
for (int i = 0; i < personCnt; i++) {
cin >> person[0] >> person[1];
if (person[1] == "enter") {
state.insert(person[0]);
}
else {
state.erase(person[0]);
}
}
for (auto it = state.rbegin(); it != state.rend(); it++) {
cout << *it << "\n";
}
return 0;
}
set 쓰면 걍풀린다.
입력받은 사원명에 따라 enter이면 insert, 아니면 erase시키고
사전 역순으로 출력하라고 했으니 rbegin() to rend()로 set을 순회하면 됨.
'알고리즘 문제 풀이' 카테고리의 다른 글
[알고리즘문제] 백준 비밀번호 찾기 (0) | 2021.04.16 |
---|---|
[알고리즘문제] 백준 암기왕(2776번) 시간초과 (0) | 2021.04.14 |
[알고리즘문제] 백준 패션왕 신해빈(9375번) (0) | 2021.04.13 |
[알고리즘문제] 백준 베스트셀러(1302번) (0) | 2021.04.13 |
[알고리즘문제] 프로그래머스 위장 (0) | 2021.04.08 |