반응형
알고리즘 분류
- 구현
- 비트마스킹
SOLUTION
import sys
M = int(sys.stdin.readline())
S = set()
for _ in range(M):
cmd = sys.stdin.readline().split()
order = cmd[0] # 명령어
if len(cmd) == 1:
if order == "all":
S = set([i for i in range(1,21)])
else:
S = set()
else:
x = int(cmd[1])
if order == "add":
S.add(x)
elif order == "remove":
S.discard(x)
elif order == "check":
print(1 if x in S else 0)
elif order == "toggle":
if x in S:
S.discard(x) # set() 에서는 list와 다르게 remove() 함수 가 아닌 discard() 함수를 사용한다
else:
S.add(x) # set() 에서는 list와 다르게 append() 함수 가 아닌 add() 함수를 사용한다
'코딩테스트 대비 > BOJ' 카테고리의 다른 글
[Baekjoon/Python] 1676번: 팩토리얼 0의 개수 - 효과는 굉장했다! (0) | 2021.11.09 |
---|---|
[Baekjoon/Python] 1620번: 나는야 포켓몬 마스터 이다솜 - 효과는 굉장했다! (0) | 2021.11.05 |
[Baekjoon/Python] 18111번: 마인크래프트 - 효과는 굉장했다! (0) | 2021.11.02 |
[Baekjoon/Python] 2805번: 나무 자르기 - 효과는 굉장했다! (0) | 2021.11.02 |
[Baekjoon/Python] 1966번: 프린터 큐 - 효과는 굉장했다! (0) | 2021.11.02 |