728x90
📌문제 출처
솔브닷 3+ 클래스 단계
https://www.acmicpc.net/problem/11723
❓ 문제
❗ 풀이
- set 자료 구조 활용
📗 풀이 코드
import sys
input = sys.stdin.readline
s = set()
for _ in range(int(input())):
order = input().split()
if order[0]=='add' and int(order[1]) not in s: s.add(int(order[1])); continue
if order[0]=='remove' and int(order[1]) in s: s.remove(int(order[1])); continue
if order[0]=='check': print(1 if int(order[1]) in s else 0); continue
if order[0]=='toggle':
if int(order[1]) in s: s.remove(int(order[1])); continue
else : s.add(int(order[1])); continue
if order[0]=='all': s=set(range(1,21)); continue
if order[0]=='empty': s=set(); continue
📗 코드 해설
- if에 대한 실행문은 콜론(:) 이후로 같은 줄에 이어줘도 실행 가능
- 세미콜론(;)은 개행 문자이므로 다음 줄을 이어줘도 실행 가능
- s={}로 선언하면 dictionary가 되므로 s=set()으로 변수 선언
- 문자열보다 integer data type이 처리 속도가 훨씬 빠르다
'파이썬 문제풀이' 카테고리의 다른 글
[백준 파이썬] 25304 영수증 (0) | 2023.09.13 |
---|---|
[백준 파이썬] 3003 킹, 퀸, 룩, 비숍, 나이트, 폰 (0) | 2023.09.13 |
[백준 파이썬] 11659 구간 합 구하기 4 (0) | 2023.09.12 |
[백준 파이썬] 2206 벽 부수고 이동하기 (4) | 2023.09.12 |
[백준 파이썬] 16928 뱀과 사다리 게임 (0) | 2023.09.12 |