집합관리 1
민우는 스마트 팩토리의 라인 공정을 제어하는 소프트웨어를 개발하고 있다.
이 공장에는 1번부터 20번까지 번호가 매겨진 20개의 정밀 센서가 존재하며, 초기 상태에서는 모든 센서가 가동 중단 상태이다.
현재 가동 중인 센서들의 집합을 \(S\)라고 할 때, 중앙 관제실에서 내리는 \(M\)개의 제어 명령을 순서대로 수행하는 프로그램을 작성하시오.
명령은 다음 6가지 형태 중 하나로 주어진다.
- add x: \(x\)번 센서를 가동한다. (\(1 \le x \le 20\)) 이미 가동 중인 경우 이 명령은 무시한다.
- remove x: \(x\)번 센서의 가동을 중단한다. (\(1 \le x \le 20\)) 이미 중단된 경우 이 명령은 무시한다.
- check x: \(x\)번 센서가 가동 중이면 1, 중단 상태이면 0을 출력한다. (\(1 \le x \le 20\))
- toggle x: \(x\)번 센서가 가동 중이면 중단시키고, 중단 상태이면 가동한다. (\(1 \le x \le 20\))
- all: 1번부터 20번까지의 모든 센서를 동시에 가동한다.
- empty: 모든 센서의 가동을 동시에 중단한다.
입력
첫째 줄에 제어 명령의 수 \(M\)이 주어진다.
둘째 줄부터 \(M\)개의 줄에 걸쳐 명령이 한 줄에 하나씩 주어진다.
출력
check 명령이 주어질 때마다 해당 명령의 결과를 한 줄에 하나씩 출력한다.
제한사항
- \(1 \le M \le 2000000\)
- \(1 \le x \le 20\)
예제 입력 1
18
add 7
add 15
check 7
check 12
toggle 12
check 12
toggle 7
check 7
remove 15
check 15
all
check 3
check 19
empty
check 3
add 20
check 20
check 7
예제 출력 1
1
0
1
0
0
1
1
0
1
0
코멘트