- Date : 2022.01.30(일)
- Time : 10분
- 비어있는 공집합 S가 주어졌을 때, 아래 연산을 수행하는 프로그램을 작성하시오.
- add x: S에 x를 추가한다. (1 ≤ x ≤ 20) S에 x가 이미 있는 경우에는 연산을 무시한다.
- remove x: S에서 x를 제거한다. (1 ≤ x ≤ 20) S에 x가 없는 경우에는 연산을 무시한다.
- check x: S에 x가 있으면 1을, 없으면 0을 출력한다. (1 ≤ x ≤ 20)
- toggle x: S에 x가 있으면 x를 제거하고, 없으면 x를 추가한다. (1 ≤ x ≤ 20)
- all: S를 {1, 2, ..., 20} 으로 바꾼다.
- empty: S를 공집합으로 바꾼다.
a = str(sys.stdin.readline().rstrip())
lists = a.split()
: 처음에는 입력을 2개로 받으려고 했는데, 그러면 all과 empty는 뒤의 숫자가 안들어오기 때문에 에러가 발생한다. 그래서 하나의 문자로 받은 다음에 공백이 있으면 나눠줘서 lists[0]은 명령어, lists[1]은 x로 받아주었다.
if lists[0] == "add":
if lists[1] not in arr:
arr.append(lists[1])
elif lists[0] == "check":
if lists[1] in arr:
print("1")
else :
print("0")
: if 문들로 검사해서 조건식을 만들어주었다. in 이라는 기본 문법을 이용해 숫자가 안에 들어있는지 검사할 수 있다.