
import sys
n = int(sys.stdin.readline()) # 입력 시간 단축
s = set() # 중복 확인 필요 없음
for _ in range(n):
inputs = sys.stdin.readline().strip().split() # 입력 시간 단축
if len(inputs) == 1:
m = inputs[0]
if m == 'all':
s = set(range(1,21))
elif m == 'empty':
s.clear()
else:
m, num = inputs[0], inputs[1]
num = int(num)
if m == 'add':
s.add(num)
elif m == 'remove':
s.discard(num) # 원소가 안에 없을 때 에러 방지 remove -> discard
elif m == 'check':
print(1 if num in s else 0) # if else 구문을 괄호 안에!
elif m == 'toggle':
if num in s:
s.remove(num)
else:
s.add(num)
# 입력 시간 단축 전 코드
n = int(input())
s = set()
for _ in range(n):
inputs = input().split()
if len(inputs) == 1:
m = inputs[0]
if m == 'all':
s = set(range(1,21))
elif m == 'empty':
s.clear()
else:
m, num = inputs
num = int(num)
if m == 'add':
s.add(num)
elif m == 'remove':
s.discard(num)
elif m == 'check':
print(1 if num in s else 0)
elif m == 'toggle':
if num in s:
s.remove(num)
else:
s.add(num)
* 원래 이 문제를 리스트로 풀었다가 틀렸음.. ㅜ
리스트는 중복 확인 필요 / set은 중복 무시되니까 set으로 풀어야함!
입력도 그냥 input 말고 sys.stdin.readline()으로 습관들이면 좋을듯,,
'HELLO WORLD > BAEKJOON' 카테고리의 다른 글
| 백준 | 2754 학점계산 (0) | 2025.01.17 |
|---|---|
| 백준 | 10757 큰 수 A+B (0) | 2025.01.17 |
| 백준 | 2920 음계 (0) | 2025.01.16 |
| 백준 | 11718 그대로 출력하기 (0) | 2025.01.16 |
| 백준 | 11655 ROT13 (0) | 2025.01.16 |