갬쿠
개미 개발
갬쿠
전체 방문자
오늘
어제
  • ALL (137)
    • React (20)
    • JS & CSS & HTML (29)
    • Algorithm (62)
    • 웹 보안 (11)
    • 달리는 까까: 쿠키런 팬게임 (10)
    • Python (0)
    • 기타 (5)
    • 비공개 플젝 (0)

블로그 메뉴

  • GitHub
  • 방명록
  • 관리자 메뉴

공지사항

인기 글

태그

  • node.js
  • Programmers
  • useEffect
  • JavaScript
  • 객체
  • EventListener
  • 쿠키런 모작
  • 게임 개발
  • 리액트
  • Baekjoon
  • js
  • 모의 해킹
  • Object
  • HTML
  • 쿠키런 팬게임
  • useState
  • 쿠키런
  • transform
  • SQL Injection
  • Best of the Best
  • useReducer
  • CSS
  • Python
  • 게임
  • 크롬 공룡 게임
  • 크롬 공룡게임
  • REACT
  • 백준
  • BEAKJOON
  • 달리는 까까

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
갬쿠

개미 개발

[1927] 최소 힙 - Python
Algorithm

[1927] 최소 힙 - Python

2023. 3. 10. 00:16
/* 문제 */
널리 잘 알려진 자료구조 중 최소 힙이 있다. 최소 힙을 이용하여 다음과 같은 연산을 지원하는 프로그램을 작성하시오.
    1. 배열에 자연수 x를 넣는다.
    2. 배열에서 가장 작은 값을 출력하고, 그 값을 배열에서 제거한다.
프로그램은 처음에 비어있는 배열에서 시작하게 된다.

최소 힙을 구현해보는 문제다. 파이썬의 내장 모듈 heapq를 사용했다.

# 정답 코드
import sys
input = sys.stdin.readline
import heapq

heap = []

n = int(input())
for _ in range(n):
    x = int(input())
    if x == 0:
        if len(heap) == 0:
            print(0)
        else:
            print(heapq.heappop(heap))
    else:
        heapq.heappush(heap, x)

heapq 모듈은 리스트를 힙처럼 사용할 수 있도록 해주는 것이기 때문에 hapq의 함수를 호출할 때마다 리스트를 인자로 넘겨주어야 한다. 

728x90

'Algorithm' 카테고리의 다른 글

[7662] 이중 우선순위 큐 - Python  (0) 2023.03.10
[11279] 최대 힙 - Python  (0) 2023.03.10
Heap  (1) 2023.03.10
[13913] 숨바꼭질 4 - Python  (0) 2023.03.02
[12852] 1로 만들기 2 - Python  (0) 2023.03.02
    'Algorithm' 카테고리의 다른 글
    • [7662] 이중 우선순위 큐 - Python
    • [11279] 최대 힙 - Python
    • Heap
    • [13913] 숨바꼭질 4 - Python
    갬쿠
    갬쿠
    보안&소프트웨어 전공 프론트엔드 개발자

    티스토리툴바