Skip to content

Latest commit

 

History

History
25 lines (21 loc) · 1.04 KB

풀이_이중우선순위큐.md

File metadata and controls

25 lines (21 loc) · 1.04 KB

🐶 프로그래머스 이중우선순위큐 풀이

  • Date : 2020.08.12(수)
  • Time : 20분

풀이

  • 이중 우선순위 큐가 할 연산 operations가 매개변수로 주어질 때, 모든 연산을 처리한 후 큐가 비어있으면 [0,0] 비어있지 않으면 [최댓값, 최솟값]을 return 하도록 solution 함수를 구현해주세요.
  1. I 숫자 : 큐에 주어진 숫자를 삽입합니다.
  2. D 1 :큐에서 최댓값을 삭제합니다.
  3. D -1 : 큐에서 최솟값을 삭제합니다.

point

  • 빈 큐에 데이터를 삭제하라는 연산이 주어질 경우, 해당 연산은 무시합니다.
        if i[0] == "I" :
            que.append(int(i[2:]))
        elif i == "D 1":
            if len(que) != 0 :
                que.remove(max(que))
        else :
            if len(que) != 0:
                que.remove(min(que))

: 처음에는 빈 큐 처리를 안해줘서 max() arg is an empty sequence 라는 오류가 발생했었다. 빈 큐 일때 값을 지울 수 없으니 예외처리가 꼭 필요하다.