[백준] 11723번 집합(python)

마뇽미뇽·2025년 8월 19일
0

알고리즘 문제풀이

목록 보기
152/165

1. 문제

https://www.acmicpc.net/problem/11723

2. 풀이

  • 집합과 반복횟수를 선언받음
  • 반복횟수 안에서 문자열 형태로 연산과 x를 입력받음
  • 연산에 따라 문제에 제시되었던 조건을 수행한다.

3. 코드

import sys

m = int(sys.stdin.readline())
s = set()

for i in range(m):
    command = sys.stdin.readline().split()
    if command[0] == 'add':
        s.add(int(command[1]))
    elif command[0] == 'remove':
        s.discard(int(command[1]))
    elif command[0] == 'check':
        if int(command[1]) in s:
            print(1)
        else:
            print(0)
    elif command[0] == 'toggle':
        if int(command[1]) in s:
            s.remove(int(command[1]))
        else:
            s.add(int(command[1]))
    elif command[0] == 'empty':
        s.clear()
    elif command[0] == 'all':
        s = set(range(1, 21))

4. 알게된 점

📚 discard() 함수는 remove 함수와 달리 set이 공집합이 아닌 경우에만 사용할 수 있다.

profile
Que sera, sera

0개의 댓글