백준 11723 : 집합

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

문제

1 2 3 3

풀이

1트


  • 일단 공집합 S를 집합 형태(set)으로 저장해주었다. 원래는 리스트로 할당하기도 했었는데 시간복잡도가 리스트형으로 계산했을 때(n^2, n) 훨씬 더 높아서 집합형으로 진행하였다.
  • all, empty 같은 경우는 다른 명령어와 다르게 뒤에 숫자가 붙지 않아
    x = int(text[1]) 코드를 적어 주지 않았다.
  • 하지만 x = int(text[1]) 코드가 반복되다 보니 메모리초과 문제가 발생하였고 따라서 이후에는 입력된 명령어를 split 함수로 분리했을 때 배열의 길이가 1개인지 2개인지를 조건문으로 나누어 x = int(text[1])를 사용하는 방법으로 바꾸었다.

2트

  • 그렇게 했더니 메모리초과가 뜨지 않았다.
  • 이 문제 같은 경우는 특이했던 게 pypy3으로 제출하면 메모리초과가 발생하고 python3으로 제출하면 메모리초과 문제가 발생하지 않았다.

완성된 코드

댓글남기기