https://www.acmicpc.net/problem/11723
import sys
input = sys.stdin.readline
n = int(input().strip())
s = set()
for _ in range(n):
command = input().split()
if len(command) == 1:
if command[0] == 'all':
s = set(range(1,21,1))
else:
s = set()
else:
(command[0] == 'add' and s.add(int(command[1]))) or \
(command[0] == 'remove' and int(command[1]) in s and s.remove(int(command[1])))
if (command[0] == 'check'):
if int(command[1]) in s:
print(1)
else:
print(0)
if (command[0] == 'toggle'):
if (int(command[1]) in s):
s.remove(int(command[1]))
else:
s.add(int(command[1]))
그냥 and 랑 or 을 사용해서 풀라고 했는데 toggle 랑 check 가 계속 오류가 나서 따로 분리 해줬다.
나머지는 그냥 무지성 하는건데 시간이 3744 나와서 엄청 느린 줄 알았지만 나머지 파이썬도 다 비슷해서 파이썬의 언어의 한계인거 같다.
'백준 문제 풀이 및 피드백' 카테고리의 다른 글
2023.01.25 경로찾기 백준[파이썬] (0) | 2023.01.25 |
---|---|
2023.01.23 파도반 수열 백준[파이썬] (0) | 2023.01.23 |
2023.01.20 마인크래프트 백준[파이썬] (0) | 2023.01.20 |
2023.01.19 연결요소의 개수 백준[파이썬] (0) | 2023.01.19 |
2023.01.19 비밀번호 찾기 백준[파이썬] (0) | 2023.01.19 |