[BOJ] 백준 11000 강의실 배정

태환·2024년 2월 27일
0

Coding Test

목록 보기
87/151

📌 [BOJ] 백준 11000 강의실 배정

📖 문제

📖 예제

📖 풀이

import heapq
import sys
input = sys.stdin.readline

N = int(input())
cla = []
for _ in range(N):
  cla.append(list(map(int, input().split())))

cla.sort(key=lambda x: (x[0],x[1]))

heap = [cla[0][1]]
for i in range(1, N):
  if heap[0] <= cla[i][0]:
    heapq.heappop(heap)
  heapq.heappush(heap, cla[i][1])

print(len(heap))

기존에 풀었던 한 강의실에서 가능한 최대 강의 수 문제와 같은 문제라고 생각했는데 조금 다르다.
본 문제는 우선 순위 queue를 활용하여 전체 강의를 진행하기 위해 몇 개의 강의실이 필요한지를 계산해야한다.

profile
연세대학교 컴퓨터과학과 석사 과정

0개의 댓글